Опубликовано

2-е издание книги: “Сети с нулевым доверием: Построение безопасных систем в ненадежных сетях”

Сети с нулевым доверием: построение безопасных систем в ненадежных сетях (2 издание)

Раскрыта парадигма информационной безопасности сетей с нулевым доверием (Zero Trust), полностью пересматривающая традиционные подходы к защите данных. Изложены фундаментальные принципы, включая непрерывную верификацию, минимальные привилегии и микросегментацию. Приведены практические сценарии внедрения Zero Trust, включая построение безопасных систем в ненадежных сетях. Обсуждены механизмы контроля доступа, системы оценки доверия и современные методы аутентификации. Приведены конкретные примеры интеграции решений для защиты устройств, пользователей и сетевого трафика. Освещены вопросы миграции с устаревших периметровых систем на архитектуру Zero Trust и рассмотрены реальные кейсы внедрения в организациях различного масштаба. Описаны фреймворки Zero Trust, архитектуры, стандарты и методологии Zero Trust, разработанные NIST, CISA, Министерством обороны США и другими организациями. Дан анализ влияния новых технологий, таких как искусственный интеллект и квантовые вычисления, на эволюцию модели безопасности.

Для специалистов по информационной безопасности.

Ключевые темы:

  • Основы Zero Trust, механизмы доверия, политики безопасности, контекстно-зависимые агенты
  • Внедрение безопасности на уровне архитектуры системы
  • Миграция с периметровой защиты на Zero Trust в реальных инфраструктурах
  • Кейсы внедрения Zero Trust в различных организациях
  • Архитектуры, стандарты и методологии Zero Trust, разработанные NIST, CISA, Министерством обороны США и другими организациями.

“Доверяй. Но проверяй. Всегда.”

Книга подробно объясняет модель безопасности сетей с нулевым доверием (Zero Trust ) — современный подход, который отвергает традиционную периметровую защиту, заменяя ее принципами: «всегда предполагай взлом» и «никогда не доверяй, но проверяй».

Приведены практические сценарии внедрения Zero Trust, включая построение безопасных систем в ненадежных сетях.

Обновленное издание рассматривает новые сценарии, реальные примеры и углубленные объяснения ключевых концепций.

Zero Trust — это не просто стратегия, а образ мышления, который подвергает сомнению устоявшиеся представления,тщательно анализирует каждое взаимодействие и защищает наши цифровые системы от невидимых угроз.
Эта книга предлагает практические рекомендации для технических директоров, инженеров и ИТ-специалистов, начинающих внедрение Zero Trust.

Энн Джонсон, вице-президент по корпоративной безопасности Microsoft

Лучшее руководство по Zero Trust для новичков и профессионалов.

Каран Двиведи, менеджер по инженерной безопасности Google

 

Книгу “Сети с нулевым доверием: Построение безопасных систем в ненадежных сетях (2 издание)” можно купить в нашем интенет-магазине.

Опубликовано

Новинка: “Стратегия обеспечения безопасности приложений”

Стратегия обеспечения безопасности приложений

Книга представляет собой пошаговое руководство по созданию успешной программы обеспечения безопасности приложений. Предлагается доступное объяснение основ безопасности, способов поиска и устранения уязвимостей веб-приложений,  рассматриваются ключевые аспекты безопасности, включая риски и угрозы, с которыми сталкиваются команды. Рассмотрена разработка эффективной программы безопасности, в том числе создание конвейера DevSecOps, выпуск безопасного кода и реализация безопасности как сервиса. Значительная часть материала посвящена интеграции безопасности в жизненный цикл разработки, способам измерения и показателям эффективности внедрения, а также мерам поддержки программы в рабочем состоянии.

Для разработчиков ПО, ИТ-архитекторов и руководителей проектов

Безопасность приложений – это нечто большее, чем защитный слой, прикрепленный к коду. Настоящая безопасность требует координации методов, людей, инструментов, технологий и процессов на протяжении всего жизненного цикла программного продукта.

Эта книга представляет собой пошаговое руководство по созданию успешной программы обеспечения безопасности приложений. Вы узнаете, как оценить текущую безопасность приложения, определить, предоставляют ли инструменты поставщика то, что вам нужно, а также смоделировать риски и угрозы. Попутно вы узнаете, как обеспечить надежную защиту программного приложения, а также как выстроить эффективный процесс обеспечения безопасности.

Рассмотрены

  • Средства обеспечения безопасности приложений на протяжении всего жизненного цикла разработки
  • Поиск и устранение уязвимостей веб-приложений
  • Создание конвейера DevSecOps
  • Настройка программы безопасности под непрерывное совершенствование

Книгу “Стратегия обеспечения безопасности приложений” можно купить в нашем интенет-магазине.

Краткое оглавление…………………………………………………………………………………. 5

Вступительное слово………………………………………………………………………………. 15

Предисловие…………………………………………………………………………………………… 17

Благодарности……………………………………………………………………………………….. 19

Об этой книге………………………………………………………………………………………… 21

Для кого предназначена эта книга?…………………………………………………………………………………………. 21

Структура книги: путеводитель……………………………………………………………………………………………….. 22

Дискуссионный форум LiveBook……………………………………………………………………………………………… 23

Об авторе……………………………………………………………………………………………….. 25

Об иллюстрации на обложке………………………………………………………………….. 27

Часть I. Определение безопасности приложений……………. 29

Глава 1. Почему нам нужна безопасность приложений?………………………… 31

1.1. Роль программы по обеспечению безопасности приложений………………………………………… 33

1.1.1. Программное обеспечение: от идеи до воплощения в жизнь……………………………….. 34

1.1.2. Насколько важна безопасность приложений?………………………………………………………. 36

1.2. Оценка текущего уровня безопасности приложений………………………………………………………. 37

1.3. Основные причины, по которым создание системы безопасности связано с определенными трудностями            39

Упражнение 1.1………………………………………………………………………………………… 40

1.3.1. Защита программы во время ее выполнения…………………………………………………………. 41

1.3.2. Недостаточно получить выходные данные от инструментов……………………………… 41

1.3.3. Очистка от шума в средствах защиты сигналов……………………………………………………. 42

1.4. Сдвиг вправо по сравнению со сдвигом влево в процессе разработки………………………….. 43

1.4.1. Сдвиг вправо в жизненном цикле программного обеспечения…………………………….. 45

1.4.2. Ошибки при сдвиге вправо………………………………………………………………………………………. 47

1.4.3. Сдвиг влево в жизненном цикле программы………………………………………………………….. 48

1.4.4. Ошибки при сдвиге влево…………………………………………………………………………………………. 51

1.5. Что лучше: сдвиг влево или сдвиг вправо?……………………………………………………………………….. 53

1.6. Безопасности приложений необходимы и вы!…………………………………………………………………. 55

Упражнение 1.2………………………………………………………………………………………… 56

1.6.1. Демократизация защиты приложений……………………………………………………………………. 56

1.6.2. Пользователи — это всего лишь пользователи……………………………………………………… 57

1.7. Примеры сбоев в защите программного обеспечения……………………………………………………… 58

Упражнение 1.3………………………………………………………………………………………… 59

1.7.1. SolarWinds…………………………………………………………………………………………………………………. 59

1.7.2. Accellion…………………………………………………………………………………………………………………….. 60

1.7.3. Фальшивое программное обеспечение…………………………………………………………………… 61

Выводы……………………………………………………………………………………………………………………………………….. 63

Глава 2. Определение проблемы…………………………………………………………….. 65

2.1. Триада CIA………………………………………………………………………………………………………………………….. 66

2.2. Конфиденциальность………………………………………………………………………………………………………….. 66

2.2.1. Политика защиты данных……………………………………………………………………………………….. 67

2.2.2. Данные в состоянии покоя………………………………………………………………………………………. 68

2.2.3. Использование шифрования……………………………………………………………………………………. 71

Упражнение 2.1………………………………………………………………………………………… 72

2.2.4. Транзитные данные………………………………………………………………………………………………….. 74

2.2.5. Шифрование перед передачей данных………………………………………………………………….. 78

2.2.6. Данные во время их использования………………………………………………………………………… 78

2.2.7. Не всё так конфиденциально…………………………………………………………………………………… 79

2.2.8. Зачем мне это нужно?………………………………………………………………………………………………. 80

Упражнение 2.2………………………………………………………………………………………… 81

2.3. Доступность………………………………………………………………………………………………………………………… 81

2.3.1. DoS- и DDoS-атаки……………………………………………………………………………………………………. 82

2.3.2. Аварийное отключение……………………………………………………………………………………………. 83

2.3.3. Роль программ-вымогателей…………………………………………………………………………………… 84

2.3.4. Ставки в казино в автономном режиме…………………………………………………………………… 85

2.3.5. Организации здравоохранения всё еще становятся объектом охоты…………………. 86

2.3.6. Повышение отказоустойчивости…………………………………………………………………………….. 86

2.4. Целостность…………………………………………………………………………………………………………………………. 88

2.4.1. Обеспечение целостности начинается с организации доступа…………………………… 89

2.4.2. Роль системы контроля версий……………………………………………………………………………….. 91

2.4.3. Проверка достоверности данных……………………………………………………………………………. 92

2.4.4. Репликация данных………………………………………………………………………………………………….. 93

2.4.5. Проверка данных……………………………………………………………………………………………………… 93

2.5. Аутентификация и авторизация…………………………………………………………………………………………. 94

2.5.1. Аутентификация……………………………………………………………………………………………………….. 95

2.5.2. Авторизация……………………………………………………………………………………………………………… 95

2.6. Противники………………………………………………………………………………………………………………………….. 96

2.6.1. Скрипт-кидди……………………………………………………………………………………………………………. 96

2.6.2. Инсайдер…………………………………………………………………………………………………………………… 97

2.6.3. Киберпреступники……………………………………………………………………………………………………. 98

2.6.4. Хактивисты и террористы……………………………………………………………………………………….. 99

2.6.5. Постоянная серьезная угроза………………………………………………………………………………….. 99

2.6.6. Зачем нам это нужно?……………………………………………………………………………………………. 100

2.7. Оценка риска……………………………………………………………………………………………………………………… 101

2.7.1. Исправление, уменьшение, допустимость……………………………………………………………. 102

2.7.2. Определение риска…………………………………………………………………………………………………. 103

2.7.3. Оценка вероятности……………………………………………………………………………………………….. 103

2.7.4. Оценка воздействия………………………………………………………………………………………………… 105

2.7.5. Степень риска…………………………………………………………………………………………………………. 106

2.7.6. Пример риска………………………………………………………………………………………………………….. 106

Упражнение 2.3………………………………………………………………………………………. 108

2.7.7. Другие методики…………………………………………………………………………………………………….. 108

Выводы……………………………………………………………………………………………………………………………………… 109

Глава 3. Компоненты безопасности приложений…………………………………. 111

3.1. Моделирование угроз………………………………………………………………………………………………………. 112

3.1.1. Основные термины, применяемые в процессе моделирования угроз………………… 113

3.1.2. Ручное моделирование угроз………………………………………………………………………………… 115

3.1.3. Запуск процесса моделирования вручную………………………………………………………….. 117

3.1.4. Моделирование угроз с привязкой банковских счетов………………………………………. 118

3.1.5. Как поступить с обнаруженными угрозами?………………………………………………………. 120

3.1.6. Использование инструментов для моделирования угроз…………………………………… 123

Упражнение 3.1………………………………………………………………………………………. 125

3.2. Инструменты для анализа безопасности……………………………………………………………………….. 125

3.2.1. Статическое тестирование безопасности приложений………………………………………. 127

3.2.2. Инструменты для работы в среде разработки…………………………………………………….. 129

3.2.3. Динамическое тестирование безопасности приложений…………………………………… 131

3.2.4. Анализ состава программного обеспечения……………………………………………………….. 133

Упражнение 3.2………………………………………………………………………………………. 136

3.3. Тест на проникновение…………………………………………………………………………………………………….. 136

Упражнение 3.3………………………………………………………………………………………. 136

3.4. Средства защиты, применяемые во время выполнения программы…………………………….. 138

3.5. Сбор информации об уязвимостях и определение приоритетов………………………………….. 141

3.5.1. Интеграция с инструментами отслеживания дефектов………………………………………. 141

3.5.2. Определение приоритетности уязвимостей…………………………………………………………. 143

3.5.3. Устранение уязвимостей……………………………………………………………………………………….. 143

3.6. Программы вознаграждения за выявленные ошибки и раскрытие информации об уязвимостях 144

3.6.1. Программа VDP………………………………………………………………………………………………………. 145

3.6.2. Программа BBP………………………………………………………………………………………………………. 146

3.6.3. Помощь в устранении уязвимостей от независимых разработчиков………………… 146

Упражнение 3.4………………………………………………………………………………………. 147

3.7. Собираем все вместе…………………………………………………………………………………………………………. 147

Выводы……………………………………………………………………………………………………………………………………… 150

Часть II. Разработка программы по обеспечению безопасности приложений…………………………………………………………………………………………………………….. 151

Глава 4. Создание безопасного кода…………………………………………………….. 153

4.1. Безопасность в DevOps…………………………………………………………………………………………………….. 155

4.1.1. Конвейеры DevOps…………………………………………………………………………………………………. 155

4.2. DevOps — не единственная игра на площадке………………………………………………………………. 157

4.2.1. Методология Waterfall…………………………………………………………………………………………… 157

4.2.2. Методология Agile………………………………………………………………………………………………….. 159

4.2.3. Методология Lean………………………………………………………………………………………………….. 162

4.2.4. DevOps лучше обеспечивает поддержку безопасности……………………………………… 165

4.2.5. Пример DevSecOps…………………………………………………………………………………………………. 168

4.3. Инструменты обеспечения безопасности приложений, применяемые на стадии разработки       170

4.3.1. Моделирование угроз в DevSecOps………………………………………………………………………. 170

4.3.2. SAST в DevSecOps…………………………………………………………………………………………………… 172

4.3.3. DAST и IAST в DevSecOps……………………………………………………………………………………… 174

4.3.4. SCA в DevSecOps…………………………………………………………………………………………………….. 179

4.3.5. Защита во время работы в DevSecOps………………………………………………………………….. 181

4.3.6. Оркестровка безопасности……………………………………………………………………………………. 183

4.3.7. Образование в сфере безопасности………………………………………………………………………. 185

4.4. Обратная связь………………………………………………………………………………………………………………….. 186

Выводы……………………………………………………………………………………………………………………………………… 188

Глава 5. Безопасность — дело каждого………………………………………………… 189

5.1. Безопасность — это общая проблема…………………………………………………………………………….. 190

5.1.1. Структура команды по безопасности приложений…………………………………………….. 191

Упражнение 5.1………………………………………………………………………………………. 192

5.1.2. Просто наймите больше специалистов по безопасности приложений……………… 193

5.1.3. Как ликвидировать разрыв?………………………………………………………………………………….. 195

5.2. Обучение в сфере безопасности………………………………………………………………………………………. 195

5.2.1. Повышение интеллектуального уровня в сфере обеспечения безопасности……. 197

5.2.2. Микрообучение и обучение по мере необходимости…………………………………………. 198

5.2.3. Это гораздо больше, чем просто обучение………………………………………………………….. 202

5.3. Стандарты, требования и эталонная архитектура……………………………………………………….. 203

5.3.1. Создание стандартов и их внедрение…………………………………………………………………… 204

Упражнение 5.2………………………………………………………………………………………. 207

5.3.2. Создание эталонной архитектуры……………………………………………………………………….. 207

5.3.3. Внесение требований в организацию…………………………………………………………………… 211

Упражнение 5.3………………………………………………………………………………………. 211

5.4. Модели зрелости………………………………………………………………………………………………………………. 212

5.4.1. Модель зрелости SAMM от OWASP…………………………………………………………………….. 212

5.4.2. Модель зрелости BSIMM………………………………………………………………………………………. 216

5.4.3. Решение проблем незрелости вашей безопасности…………………………………………….. 220

5.5. Децентрализованная защита приложений……………………………………………………………………… 221

5.5.1. Программа чемпионов по безопасности………………………………………………………………. 222

5.5.2. Эффективное использование децентрализованной модели……………………………….. 224

Выводы……………………………………………………………………………………………………………………………………… 226

Глава 6. Безопасность приложений как услуга…………………………………….. 227

6.1. Управление рисками в процессе разработки…………………………………………………………………. 228

6.1.1. Определение и снижение риска…………………………………………………………………………….. 229

6.1.2. Определение риска приложения…………………………………………………………………………… 230

6.1.3. Распределение по степени риска………………………………………………………………………….. 234

Упражнение 6.1………………………………………………………………………………………. 236

6.2. Безопасный выпуск вместо блокировок………………………………………………………………………….. 240

6.2.1. Автоматизация выпуска с учетом степени риска………………………………………………… 241

6.2.2. Устранение барьеров с помощью установки ограждений…………………………………. 242

6.3. Объединение инженерных решений и требований безопасности на основе предложения услуг 244

6.3.1. Экосистема безопасности приложений как услуга…………………………………………….. 246

Упражнение 6.2………………………………………………………………………………………. 249

6.3.2. Услуги, запрашиваемые с использованием заявок……………………………………………… 249

6.3.3. Обеспечение общей безопасности приложений………………………………………………….. 252

Выводы……………………………………………………………………………………………………………………………………… 255

Часть III. Внедрение и оценка………………………………………………….. 257

Глава 7. Разработка плана действий…………………………………………………….. 259

7.1. Определение текущего уровня безопасности…………………………………………………………………. 260

7.1.1. Начинаем наше путешествие………………………………………………………………………………… 260

7.1.2. Какими инструментами вы сможете воспользоваться?………………………………………. 262

7.1.3. Какие уязвимости есть в вашей организации?…………………………………………………….. 266

7.1.4. Какая дополнительная информация вам доступна?…………………………………………… 269

7.2. Определение целей организации в области безопасности……………………………………………. 270

7.2.1. Цели организации…………………………………………………………………………………………………… 271

7.2.2. Цели обеспечения безопасности приложений…………………………………………………….. 272

7.2.3. Согласование целей бизнеса и безопасности……………………………………………………… 273

7.3. Выявление недостатков……………………………………………………………………………………………………. 274

7.3.1. Выявление существующих недостатков………………………………………………………………. 275

7.3.2. Вводные данные для анализа недостатков…………………………………………………………. 277

7.3.3. Как поступать с результатами анализа недостатков?……………………………………….. 279

7.4. Образец плана действий по обеспечению безопасности приложений………………………… 281

7.4.1. Инженерное образование в области безопасности…………………………………………….. 282

7.4.2. Обучение команды по обеспечению безопасности приложений………………………. 285

7.4.3. Программа развития средств защиты приложений…………………………………………….. 287

7.4.4. Согласование планов действий инженерных команд и службы безопасности приложений             289

7.4.5. Планы на будущее…………………………………………………………………………………………………. 291

Упражнение 7.1………………………………………………………………………………………. 293

Выводы……………………………………………………………………………………………………………………………………… 295

Глава 8. Оценка эффективности…………………………………………………………… 297

8.1. Что нам нужно измерять?…………………………………………………………………………………………………. 298

8.1.1. Измерение эффективности ваших инструментов…………………………………………………. 299

8.1.2. Настройка инструментов с учетом обратной связи……………………………………………. 300

8.1.3. Измерение эффективности процессов безопасности…………………………………………… 303

8.1.4. Измерение среднего времени восстановления…………………………………………………….. 304

8.1.5. Оптимизация среднего времени устранения уязвимостей………………………………….. 305

8.2. Использование ключевых показателей эффективности………………………………………………… 307

8.2.1. Создание ключевых показателей эффективности……………………………………………….. 308

8.2.2. Отслеживание ключевых показателей эффективности………………………………………. 310

8.2.3. Реализация изменений на основе ключевых показателей эффективности……….. 311

Упражнение 8.1………………………………………………………………………………………. 314

8.3. Обратная связь………………………………………………………………………………………………………………….. 314

8.3.1. Получение обратной связи в ходе бесед………………………………………………………………. 315

8.3.2. Получение обратной связи с помошью опросов…………………………………………………. 316

8.4. Карта показателей безопасности……………………………………………………………………………………. 318

8.4.1. Подготовка к созданию карты показателей безопасности………………………………… 319

Упражнение 8.2………………………………………………………………………………………. 320

8.4.2. Определение значений баллов для карты показателей безопасности……………… 322

8.4.3. Создание карты показателей безопасности………………………………………………………… 323

Упражнение 8.3………………………………………………………………………………………. 324

Выводы……………………………………………………………………………………………………………………………………… 325

Глава 9. Дальнейшее совершенствование программы………………………….. 327

9.1. Опережать атакующего……………………………………………………………………………………………………. 328

9.1.1. Матрица MITRE…………………………………………………………………………………………………….. 329

Разведка………………………………………………………………………………………………………………….. 329

Ресурсы, доступ и выполнение…………………………………………………………………………….. 330

Постоянное присутствие, повышение привилегий и попытки уклонения от блокировки   330

Поиск учетных данных и получение доступа к ним………………………………………….. 331

Сбор информации и горизонтальное перемещение……………………………………………. 331

Командно-контрольная деятельность и эксфильтрация……………………………………. 331

Воздействие……………………………………………………………………………………………………………. 332

9.1.2. Система Cyber Kill Chain……………………………………………………………………………………….. 332

Разведка………………………………………………………………………………………………………………….. 333

Создание и доставка средства атаки…………………………………………………………………… 333

Внедрение и эксплуатация…………………………………………………………………………………… 334

Командно-контрольная деятельность…………………………………………………………………. 334

9.2. Каталоги угроз………………………………………………………………………………………………………………….. 335

9.2.1. Первая десятка уязвимостей из каталога угроз OWASP…………………………………….. 336

Идентификация уязвимостей из списка первой десятки OWASP………………………. 337

Использование первой десятки OWASP для проведения тестов на проникновение 338

Использование первой десятки OWASP для определения эффективности инструментов  338

Использование первой десятки OWASP для разработки требований………………. 338

Стандарт проверки безопасности приложений OWASP……………………………………. 338

9.2.2. Первые 25 уязвимостей из каталога угроз MITRE CWE…………………………………….. 340

9.3. Опережающее развитие инженерной мысли………………………………………………………………….. 342

9.3.1. Идти в ногу с языками программирования…………………………………………………………… 342

9.3.2. Идти в ногу с технологическими изменениями……………………………………………………. 343

9.3.3. Когда набор персонала и обучение сталкиваются с затруднениями……………….. 345

Построение партнерских отношений с инженерной службой организации……. 345

Взаимозаменяемые инструменты………………………………………………………………………… 346

9.4. Перестаньте гнаться за новым суперинструментом………………………………………………………. 347

9.4.1. Использование матрицы возможностей……………………………………………………………….. 348

9.4.2. Работа с инструментами и их поставщиками……………………………………………………… 350

9.4.3. Купите новый суперинструмент…………………………………………………………………………… 351

9.5. Готовьтесь к самому худшему…………………………………………………………………………………………. 352

Выводы……………………………………………………………………………………………………………………………………… 356

ПРИЛОЖЕНИЕ. Ответы на упражнения……………………………………………… 357

Глава 1……………………………………………………………………………………………………………………………………… 357

Упражнение 1.1………………………………………………………………………………………………………………… 357

Упражнение 1.2………………………………………………………………………………………………………………… 357

Упражнение 1.3………………………………………………………………………………………………………………… 358

Глава 2……………………………………………………………………………………………………………………………………… 358

Упражнение 2.1………………………………………………………………………………………………………………… 358

Упражнение 2.2………………………………………………………………………………………………………………… 358

Упражнение 2.3………………………………………………………………………………………………………………… 359

Глава 3……………………………………………………………………………………………………………………………………… 360

Упражнение 3.1………………………………………………………………………………………………………………… 360

Упражнение 3.2………………………………………………………………………………………………………………… 360

Упражнение 3.3………………………………………………………………………………………………………………… 361

Упражнение 3.4………………………………………………………………………………………………………………… 361

Глава 5……………………………………………………………………………………………………………………………………… 361

Упражнение 5.1………………………………………………………………………………………………………………… 361

Упражнение 5.2………………………………………………………………………………………………………………… 362

Упражнение 5.3………………………………………………………………………………………………………………… 362

Глава 6……………………………………………………………………………………………………………………………………… 362

Упражнение 6.1………………………………………………………………………………………………………………… 362

Упражнение 6.2………………………………………………………………………………………………………………… 363

Глава 7……………………………………………………………………………………………………………………………………… 363

Упражнение 7.1………………………………………………………………………………………………………………… 363

Глава 8……………………………………………………………………………………………………………………………………… 363

Упражнение 8.1………………………………………………………………………………………………………………… 363

Упражнение 8.2………………………………………………………………………………………………………………… 363

Упражнение 8.3………………………………………………………………………………………………………………… 364

Предметный указатель…………………………………………………………………………. 365

 

Опубликовано

Встречайте: “Искусственный интеллект глазами хакера”

Искусственный интеллект глазами хакера ( Библиотека журнала «Хакер»)

Эта книга — сборник лучших, тщательно отобранных статей из легендарного журнала «Хакер». Рассмотрены современные подходы к использованию искусственного интеллекта в области информационной безопасности. Описаны методы обхода ограничений ChatGPT, рассмотрено применение нейросетей для написания эксплойтов и поиска уязвимостей в коде. Представлены практические кейсы использования GPT-4 на багбаунти, приведены способы выманивания паролей с помощью чат-ботов и QR-кодов. Даны рекомендации по применению нейросетей и языковой модели Llama для анализа и поиска критичных данных в коде программ. Отдельное внимание уделено генеративному ИИ: показана карта его возможностей, а также способы улучшения изображений с помощью нейросетей. Книга станет ценным источником знаний для тех, кто хочет изучить искусственный интеллект через призму хакерских технологий.

Для пользователей ПК

Эта книга — сборник лучших, тщательно отобранных статей из легендарного журнала «Хакер». В материалах книги рассказывается об использовании искусственного интеллекта (ИИ) в сфере информационной безопасности. Читатель узнает, как большие языковые модели и нейросети могут помочь пентестерам, разработчикам ПО и специалистам по защите информации.

Книгу “Искусственный интеллект глазами хакера“.

Предисловие…………………………………………………………………………………………….. 7

  1. Каким бывает машинное обучение и как оно применяется вбезопасности (Константин Коновалов)………………………………………………………………………………………………………………. 11

Классический кодинг vs машинное обучение…………………………………………………………………………. 11

Задачи искусственного интеллекта…………………………………………………………………………………………. 12

Чем машинное обучение может помочь в ИБ………………………………………………………………………….. 13

Что включает в себя машинное обучение……………………………………………………………………………….. 15

Данные………………………………………………………………………………………………………………………………… 15

Признаки……………………………………………………………………………………………………………………………… 15

Алгоритмы………………………………………………………………………………………………………………………….. 16

Чем отличаются разные алгоритмы…………………………………………………………………………………………. 17

Наивный байесовский классификатор…………………………………………………………………………….. 17

Деревья решений………………………………………………………………………………………………………………… 17

Отличия нейросетей от других алгоритмов…………………………………………………………………………….. 18

Особенности машинного обучения в ИБ…………………………………………………………………………………. 18

Подведем итоги………………………………………………………………………………………………………………………….. 19

  1. Карта мира генеративного ИИ. Выбираем модель и интерфейс, разбираемся с терминами (Олег Афонин)…………………………………………………………………………………………………… 21

Что нужно, чтобы начать создавать картинки?……………………………………………………………………… 21

Видеокарта…………………………………………………………………………………………………………………………. 21

Софт…………………………………………………………………………………………………………………………………….. 22

Что из этого выбрать?……………………………………………………………………………………………………………….. 23

Модели и архитектуры……………………………………………………………………………………………………………… 24

Базовые и дополнительные модели…………………………………………………………………………………………. 26

Из каких частей состоит базовая модель…………………………………………………………………………. 27

Обученные модели и ремиксы…………………………………………………………………………………………… 28

Где брать базовые модели………………………………………………………………………………………………… 28

  1. «Дэн» может все. Как пользователи обманывают ChatGPT
    (Мария Нефёдова)…………………………………………………………………………………… 31

Заставить ИИ сказать запрещенное…………………………………………………………………………………………. 31

DAN……………………………………………………………………………………………………………………………………………… 33

Другой абьюз ChatGPT……………………………………………………………………………………………………………… 37

  1. ChatGPT на рыбалке. Выманиваем пароль при помощи QR-кода
    и чат-бота (Дмитрий Марюшкин)…………………………………………………………….. 43

Задача…………………………………………………………………………………………………………………………………………. 43

Проблемы……………………………………………………………………………………………………………………………………. 44

Решение………………………………………………………………………………………………………………………………………. 44

Сценарий рассылки…………………………………………………………………………………………………………………… 47

Выводы……………………………………………………………………………………………………………………………………….. 50

  1. Запрягаем Лламу на поиски критичных данных в коде
    (Дмитрий Марюшкин)……………………………………………………………………………… 51

Ищем критичное в коде……………………………………………………………………………………………………………… 51

Скоринг на минималках……………………………………………………………………………………………………………. 53

Подключаем железные мозги……………………………………………………………………………………………………. 53

Локальное использование модели……………………………………………………………………………………………. 57

Выводы……………………………………………………………………………………………………………………………………….. 61

  1. Роботы на охоте. Применяем GPT-4 на багбаунти
    (Андрей “W0lFreaK” Козлов)……………………………………………………………………… 63

Разведка………………………………………………………………………………………………………………………………………. 63

Поиск поддоменов……………………………………………………………………………………………………………… 63

Технологии и версии………………………………………………………………………………………………………….. 64

Поиск мисконфигов……………………………………………………………………………………………………………………. 66

Эксплуатация…………………………………………………………………………………………………………………………….. 67

CSRF……………………………………………………………………………………………………………………………………. 67

XSS………………………………………………………………………………………………………………………………………. 69

XXE……………………………………………………………………………………………………………………………………… 70

Деобфускация и анализ кода…………………………………………………………………………………………….. 71

Составление отчета…………………………………………………………………………………………………………………… 72

Выводы……………………………………………………………………………………………………………………………………….. 73

  1. Разоблачаем баги-пустышки и пишем эксплойт при помощи ChatGPT (Хусейн Гадашов) 75

CVE-2023-39526: «уязвимость» в PrestaShop………………………………………………………………………….. 76

CVE-2023-6875: баг в Post SMTP Mailer………………………………………………………………………………….. 78

Какое имя пользователя у администратора?………………………………………………………………………….. 80

Забыли пароль…………………………………………………………………………………………………………………………… 81

Логи электронной почты…………………………………………………………………………………………………………… 81

Изменение пароля………………………………………………………………………………………………………………………. 83

Загрузка шелла………………………………………………………………………………………………………………………….. 83

Бум-бум-эксплойт с GPT……………………………………………………………………………………………………………. 87

Выводы……………………………………………………………………………………………………………………………………….. 88

  1. Сделай мне красиво! Изобретаем персональный нейросетевой фотоувеличитель (Игорь Орещенков)………………………………………………………………………………………………………………. 89

Просто сделай мне красиво!……………………………………………………………………………………………………… 89

Необходимое оборудование…………………………………………………………………………………………………….. 91

Операционная система……………………………………………………………………………………………………………… 93

Среда исполнения……………………………………………………………………………………………………………………… 94

Увеличение виртуальной памяти……………………………………………………………………………………… 96

Нейросети «фотоувеличителя»…………………………………………………………………………………………………. 97

Борьба с прогрессом………………………………………………………………………………………………………………….. 99

Обработка фотографий…………………………………………………………………………………………………………… 100

Выводы……………………………………………………………………………………………………………………………………… 101

«Хакер»: безопасность, разработка, DevOps…………………………………………. 103

Предметный указатель…………………………………………………………………………. 107

Опубликовано

Вышло 2-е издание книги: “C# глазами хакера”

C# глазами хакера. 2-е изд.

Подробно рассмотрены  все аспекты безопасности от теории до реальных реализаций .NET-приложений на языке C#. Рассказано, как обеспечивать безопасную регистрацию, авторизацию и поддержку сессий пользователей. Перечислены уязвимости, которые могут быть присущи веб-сайтам и Web API, описано, как хакеры могут эксплуатировать уязвимости  и как можно обеспечить безопасность приложений. Даны основы оптимизации кода для обработки максимального количества пользователей с целью экономии ресурсов серверов и денег на хостинг. Рассмотрены сетевые функции: проверка соединения, отслеживание запроса, доступ к микросервисам, работа с сокетами и др. Приведены реальные примеры атак хакеров и способы защиты от них. Во втором издании добавлены новые примеры безопасности, рассмотрены вопросы реализации технологий OAuth2 и Single Sign On.

Для веб-программистов, администраторов и специалистов по безопасности

  • Теория безопасности кода
  • Проблемы авторизации
  • Безопасность веб-приложений на реальных примерах
  • Оптимизация кода
  • Защита Web API
  • Сетевые функции
  • Реальные примеры атак хакеров и защиты от них
  • Проблемы и реализация OAuth2 и Single Sign On

Книгу “C# глазами хакера. 2-е изд.“.

Предисловие…………………………………………………………………………………………….. 7

Об авторе………………………………………………………………………………………………………………………………………. 7

О книге…………………………………………………………………………………………………………………………………………… 8

Благодарности……………………………………………………………………………………………………………………………… 8

Глава 1. Теория безопасности………………………………………………………………… 10

1.1. Комплексная защита…………………………………………………………………………………………………………… 11

1.2. Сдвиг влево………………………………………………………………………………………………………………………….. 14

1.2.1. Обучение………………………………………………………………………………………………………………………… 15

1.2.2. Сбор требований…………………………………………………………………………………………………………… 16

1.2.3. Безопасность на этапе разработки……………………………………………………………………………… 16

1.2.4. Внешние компоненты……………………………………………………………………………………………………. 17

1.2.5. Статические анализаторы кода…………………………………………………………………………………… 17

1.2.6. Динамический анализатор кода………………………………………………………………………………….. 18

1.2.7. Испытание на проникновение……………………………………………………………………………………… 18

1.2.8. Отчеты……………………………………………………………………………………………………………………………. 18

1.3. Проект OWASP…………………………………………………………………………………………………………………….. 19

1.4. Отказ в обслуживании………………………………………………………………………………………………………… 20

1.5. Управление кодом………………………………………………………………………………………………………………. 22

1.6. Стабильность кода: нулевые исключения………………………………………………………………………… 24

1.7. Исключительные ситуации………………………………………………………………………………………………… 26

1.8. Журналы ошибок и аудит………………………………………………………………………………………………….. 27

1.9. Ошибки нужно исправлять…………………………………………………………………………………………………. 29

1.10. Отгружаем легко и часто………………………………………………………………………………………………….. 35

1.10.1. Обновление базы данных…………………………………………………………………………………………… 37

1.10.2. Копирование файлов………………………………………………………………………………………………….. 38

1.10.3. Распределенное окружение……………………………………………………………………………………….. 39

1.11. Шифрование трафика……………………………………………………………………………………………………….. 40

1.12. POST или GET?………………………………………………………………………………………………………………….. 42

1.13. Ограничение времени выполнения………………………………………………………………………………….. 45

1.14. Кто проверяет данные?…………………………………………………………………………………………………….. 46

Глава 2. Аутентификация и авторизация……………………………………………….. 47

2.1. Шаблон приложения…………………………………………………………………………………………………………… 47

2.2. Регистрация пользователей……………………………………………………………………………………………….. 50

2.3. Форма регистрации…………………………………………………………………………………………………………….. 51

2.3.1. Корректные данные регистрации………………………………………………………………………………… 53

2.3.2. Email с плюсом и точкой………………………………………………………………………………………………. 57

2.4. Хранение паролей………………………………………………………………………………………………………………. 58

2.4.1. Хеширование…………………………………………………………………………………………………………………. 59

2.4.2. MD5-хеширование………………………………………………………………………………………………………… 60

2.4.3. Безопасное хеширование……………………………………………………………………………………………… 64

2.4.4. И еще немного о безопасности…………………………………………………………………………………….. 64

2.5. Создание посетителей………………………………………………………………………………………………………… 65

2.6. Captcha………………………………………………………………………………………………………………………………… 66

2.6.1. Настраиваем Google reCAPTCHA……………………………………………………………………………….. 67

2.6.2. Пример использования reCAPTCHA……………………………………………………………………………. 69

2.6.3. Отменяем капчу…………………………………………………………………………………………………………….. 72

2.7. Аутентификация………………………………………………………………………………………………………………….. 73

2.7.1. Базовая аутентификация………………………………………………………………………………………………. 73

2.7.2. Журналирование и защита от перебора…………………………………………………………………….. 75

2.7.3. Защищаемся от перебора…………………………………………………………………………………………….. 76

2.8. Запомни меня………………………………………………………………………………………………………………………. 79

2.8.1. Зашифрованный якорь………………………………………………………………………………………………….. 80

2.8.2. Опасность HttpOnly………………………………………………………………………………………………………. 83

2.8.3. Уникальные токены………………………………………………………………………………………………………. 84

2.9. Автозаполнение…………………………………………………………………………………………………………………… 87

2.10. Авторизация………………………………………………………………………………………………………………………. 87

2.11. Железобетонная проверка……………………………………………………………………………………………….. 92

2.12. Протокол OAuth………………………………………………………………………………………………………………… 93

2.12.1. Конфигурирование приложения «Яндекс» OAuth……………………………………………………. 95

2.12.2. Создаем клиента…………………………………………………………………………………………………………. 99

2.12.3. Что дальше?………………………………………………………………………………………………………………. 103

2.13. Делим авторизацию………………………………………………………………………………………………………… 103

2.14. Защита сессии…………………………………………………………………………………………………………………. 104

2.15. Многоуровневая авторизация……………………………………………………………………………………….. 105

2.16. Microsoft Identity…………………………………………………………………………………………………………….. 107

Глава 3. Безопасность .NET-приложений……………………………………………… 111

3.1. Инъекция SQL: основы……………………………………………………………………………………………………… 111

3.1.1. SQL-уязвимость в ADO.NET……………………………………………………………………………………….. 112

3.1.2. Защита от SQL-инъекции……………………………………………………………………………………………. 115

3.2. Dapper ORM………………………………………………………………………………………………………………………. 118

3.3. Entity Framework……………………………………………………………………………………………………………….. 122

3.4. Отправка электронной почты………………………………………………………………………………………….. 126

3.4.1. Очереди сообщений……………………………………………………………………………………………………. 127

3.4.2. Работа с очередью………………………………………………………………………………………………………. 129

3.4.3. Отправляем письма…………………………………………………………………………………………………….. 131

3.5. Подделка параметров………………………………………………………………………………………………………. 133

3.6. Флуд…………………………………………………………………………………………………………………………………… 140

3.7. XSS: межсайтовый скриптинг………………………………………………………………………………………….. 142

3.7.1. Защита от XSS в .NET…………………………………………………………………………………………………. 143

3.7.2. Примеры эксплуатации XSS………………………………………………………………………………………. 146

3.7.3. Типы XSS……………………………………………………………………………………………………………………… 148

3.7.4. Хранимая XSS……………………………………………………………………………………………………………… 149

3.7.5. XSS: текст внутри тега………………………………………………………………………………………………… 155

3.7.6. Скрипты……………………………………………………………………………………………………………………….. 157

3.7.7. Атака через промежуточный слой…………………………………………………………………………….. 158

3.7.8. HTML-расширения……………………………………………………………………………………………………… 159

3.7.9. Вывод из контроллера………………………………………………………………………………………………… 160

3.7.10. Эксплуатация XSS-уязвимости………………………………………………………………………………… 161

3.8. Политика безопасности контента……………………………………………………………………………………. 161

3.8.1. CORS на страже контента………………………………………………………………………………………….. 162

3.8.2. Источники загрузки…………………………………………………………………………………………………….. 162

3.8.3. Тестирование политики……………………………………………………………………………………………… 165

3.8.4. Разрешенные источники…………………………………………………………………………………………….. 168

3.9. SQL Injection: доступ к недоступному……………………………………………………………………………. 170

3.10. CSRF: межсайтовая подделка запроса…………………………………………………………………………. 172

3.11. Загрузка файлов……………………………………………………………………………………………………………… 177

3.12. Переадресация………………………………………………………………………………………………………………… 179

3.13. Защита от DoS…………………………………………………………………………………………………………………. 183

3.14. Кликджекинг……………………………………………………………………………………………………………………. 186

Глава 4. О производительности в целом……………………………………………….. 191

4.1. Основы……………………………………………………………………………………………………………………………….. 191

4.2. Когда нужно оптимизировать?………………………………………………………………………………………… 193

4.3. Оптимизация и рефакторинг…………………………………………………………………………………………….. 194

4.4. Отображение данных……………………………………………………………………………………………………….. 195

4.5. Асинхронное выполнение запросов………………………………………………………………………………… 198

4.6. Параллельное выполнение………………………………………………………………………………………………. 199

4.7. LINQ…………………………………………………………………………………………………………………………………… 200

4.8. Обновление .NET………………………………………………………………………………………………………………. 202

Глава 5. Производительность в .NET……………………………………………………. 203

5.1. Типы данных……………………………………………………………………………………………………………………… 203

5.1.1. Производительность…………………………………………………………………………………………………… 203

5.1.2. Отличие структур от классов…………………………………………………………………………………….. 205

5.1.3. Ссылки на структуры…………………………………………………………………………………………………. 210

5.2. Виртуальные методы……………………………………………………………………………………………………….. 212

5.3. Управление памятью………………………………………………………………………………………………………… 214

5.4. Закрытие соединений с базой данных……………………………………………………………………………. 217

5.5. Циклы…………………………………………………………………………………………………………………………………. 220

5.6. Строки………………………………………………………………………………………………………………………………… 221

5.7. Исключительные ситуации………………………………………………………………………………………………. 223

5.8. Странный HttpClient…………………………………………………………………………………………………………. 224

5.9. Класс ArrayPool………………………………………………………………………………………………………………… 226

5.10. Параметризованные запросы к БД……………………………………………………………………………….. 228

Глава 6. Сеть………………………………………………………………………………………… 230

6.1. Проверка соединения……………………………………………………………………………………………………….. 230

6.2. Отслеживание запроса……………………………………………………………………………………………………… 231

6.3. Класс HTTP-клиент…………………………………………………………………………………………………………… 234

6.4. Класс Uri……………………………………………………………………………………………………………………………. 235

6.5. Уровень розетки………………………………………………………………………………………………………………… 237

6.5.1. Сервер………………………………………………………………………………………………………………………….. 237

6.5.2. Клиент………………………………………………………………………………………………………………………….. 241

6.6. Доменная система имен……………………………………………………………………………………………………. 243

Глава 7. Web API………………………………………………………………………………….. 245

7.1. Пример Web API………………………………………………………………………………………………………………… 245

7.2. JWT-токены……………………………………………………………………………………………………………………….. 246

7.3. Устройство токенов………………………………………………………………………………………………………….. 253

7.4. Авторизация API……………………………………………………………………………………………………………….. 256

7.5. XSS и Web API…………………………………………………………………………………………………………………… 257

Глава 8. Трюки…………………………………………………………………………………….. 260

8.1. Кеширование…………………………………………………………………………………………………………………….. 260

8.1.1. Кеширование результата…………………………………………………………………………………………… 260

8.1.2. Кеширование статичными переменными…………………………………………………………………. 264

8.1.3. Кеширование уровня запроса……………………………………………………………………………………. 265

8.1.4. Кеширование в памяти……………………………………………………………………………………………….. 266

8.1.5. Сервер кеширования…………………………………………………………………………………………………… 268

8.1.6. Cookie в качестве кеша……………………………………………………………………………………………….. 269

8.2. Сессии………………………………………………………………………………………………………………………………… 271

8.2.1. Пишем свою сессию……………………………………………………………………………………………………. 271

8.2.2. Безопасность сессии…………………………………………………………………………………………………… 274

8.2.3. Сессия в качестве кеша………………………………………………………………………………………………. 275

8.2.4. Уничтожение сессии…………………………………………………………………………………………………… 277

8.2.5. Выход…………………………………………………………………………………………………………………………… 277

8.2.6. Кукушка для сессии……………………………………………………………………………………………………. 278

8.2.7. Преимущества и недостатки………………………………………………………………………………………. 279

8.3. Защита от множественной обработки…………………………………………………………………………….. 280

Заключение………………………………………………………………………………………….. 284

Литература…………………………………………………………………………………………… 285

Приложение. Описание файлового архива, сопровождающего книгу….. 286

Предметный указатель…………………………………………………………………………. 287

 

Опубликовано

Новинка: “Реагирование на инциденты на основе аналитических данных. 2-е издание”

Реагирование на инциденты на основе аналитических данных. 2-е издание

Книга рассматривает практические аспекты реагирования на инциденты информационной безопасности и анализа киберугроз. Подробно изложена теория исследования угроз, рассмотрены основы аналитической деятельности специалиста по информационной безопасности, описаны протоколы реагирования на инциденты на основе аналитических данных (Intelligence-Driven Incident Response, IDIR). Наглядно с практическими примерами рассматривается модель F3EAD — Поиск, Фиксация, Завершение, Эксплойт, Анализ и Распространение (Find, Fix, Finish, Exploit, Analyze, and Disseminate).  Уделено внимание стратегической аналитической деятельности и построению эффективной команды аналитиков.

В случае нарушения безопасности хорошо продуманный план реагирования на инциденты позволит вам выявить злоумышленников и узнать, как они действуют. Но только если вы подходите к этой задаче с позиции анализа киберугроз, вы сможете по-настоящему понять ценность собранной информации. В обновленном втором издании рассказывается об основах аналитики безопасности, а также о том, как лучше всего использовать ее методы при реагировании на инциденты.

Описанные в книге технологии усиливают друг друга: анализ угроз поддерживает и дополняет реагирование на инциденты, а реагирование на инциденты формирует полезную информацию для анализа угроз. Это практическое руководство поможет специалистам по информационной безопасности, аналитикам вредоносного ПО, экспертам по реверс-инжинирингу, специалистам по цифровой криминалистике, аналитикам безопасности и их руководителям максимально использовать такую взаимосвязь.

Книга, состоящая из трех частей, включает в себя:

  • Основы: вы узнаете, что такое исследование киберугроз, аналитическая деятельность, процесс реагирования на инциденты и как эти компоненты работают вместе.
  • Практическое применение: вы изучите процесс реагирования на инциденты на основе аналитических данных (Intelligence-Driven Incident Response, IDIR), выполняя операции F3EAD — Поиск, Фиксация, Завершение, Эксплойт, Анализ и Распространение (Find, Fix, Finish, Exploit, Analyze, and Disseminate).
  • Направление развития: вы изучите масштабные аспекты IDIR, выходящие за рамки отдельных расследований инцидентов, включая стратегическую аналитическую деятельность и построение команды аналитиков угроз безопасности.

Книгу “Реагирование на инциденты на основе аналитических данных. 2-е издание” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Отзывы о книге……………………………………………………………………………………… 13

Предисловие ко второму изданию………………………………………………………….. 15

Предисловие к первому изданию……………………………………………………………. 18

Введение………………………………………………………………………………………………… 21

Почему мы написали эту книгу………………………………………………………………………………………………… 21

Для кого эта книга……………………………………………………………………………………………………………………… 22

Как организована эта книга……………………………………………………………………………………………………… 22

Условные обозначения, используемые в книге……………………………………………………………………….. 23

Онлайн-обучение O’Reilly…………………………………………………………………………………………………………. 23

Наши контакты………………………………………………………………………………………………………………………….. 23

Благодарности…………………………………………………………………………………………………………………………… 24

Часть I. Основы……………………………………………………………………………….. 27

Глава 1. Введение…………………………………………………………………………………… 29

Аналитическая деятельность как часть реагирования на инциденты………………………………….. 29

История разведки киберугроз………………………………………………………………………………………… 30

Первое вторжение…………………………………………………………………………………………………… 30

Разрушительные атаки………………………………………………………………………………………….. 31

Moonlight Maze……………………………………………………………………………………………………….. 32

Современная разведка киберугроз……………………………………………………………………………….. 33

Путь вперед……………………………………………………………………………………………………………………… 34

Реагирование на инциденты как часть анализа……………………………………………………………………… 34

Что такое реагирование на инциденты на основе аналитических данных?………………………… 35

Зачем нужно реагирование на инциденты на основе аналитических данных?………………….. 36

Operation SMN…………………………………………………………………………………………………………………. 36

SolarWinds……………………………………………………………………………………………………………………….. 37

Заключение………………………………………………………………………………………………………………………………… 38

Глава 2. Основы аналитической деятельности………………………………………. 40

Аналитическая деятельность и исследования………………………………………………………………………… 41

Данные в противовес аналитической деятельности………………………………………………………………. 42

Источники и методы………………………………………………………………………………………………………………….. 43

Модели……………………………………………………………………………………………………………………………………….. 46

Использование моделей для совместной работы………………………………………………………… 47

Модели процессов………………………………………………………………………………………………………….. 47

OODA……………………………………………………………………………………………………………………….. 48

Цикл аналитической деятельности………………………………………………………………………. 50

Использование цикла аналитической деятельности…………………………………………………… 55

Качества хорошей аналитической деятельности…………………………………………………………………… 57

Метод сбора……………………………………………………………………………………………………………………. 57

Дата сбора………………………………………………………………………………………………………………………. 57

Контекст………………………………………………………………………………………………………………………….. 57

Устранение предубеждений в анализе…………………………………………………………………………. 57

Уровни аналитической деятельности………………………………………………………………………………………. 58

Тактическая аналитическая деятельность…………………………………………………………………… 58

Оперативная аналитическая деятельность………………………………………………………………….. 59

Стратегическая аналитическая деятельность……………………………………………………………… 59

Уровни уверенности………………………………………………………………………………………………………………….. 60

Заключение………………………………………………………………………………………………………………………………… 61

Глава 3. Основы реагирования на инциденты……………………………………….. 62

Цикл “инцидент-реагирование”………………………………………………………………………………………………… 62

Подготовка………………………………………………………………………………………………………………………. 63

Идентификация……………………………………………………………………………………………………………….. 65

Сдерживание…………………………………………………………………………………………………………………… 66

Устранение……………………………………………………………………………………………………………………… 66

Восстановление………………………………………………………………………………………………………………. 68

Выводы……………………………………………………………………………………………………………………………. 69

Kill chain………………………………………………………………………………………………………………………………………. 71

Нацеливание…………………………………………………………………………………………………………………… 72

Разведка…………………………………………………………………………………………………………………………… 73

Жесткие и мягкие данные………………………………………………………………………………………. 73

Активные и пассивные методы сбора информации…………………………………………….. 73

Вепонизация……………………………………………………………………………………………………………………. 74

Охота за уязвимостями………………………………………………………………………………………….. 75

Создание эксплойта……………………………………………………………………………………………….. 76

Разработка импланта…………………………………………………………………………………………….. 76

Тестирование………………………………………………………………………………………………………….. 77

Разработка инфраструктуры………………………………………………………………………………… 78

Доставка………………………………………………………………………………………………………………………….. 79

Использование уязвимости……………………………………………………………………………………………. 80

Установка………………………………………………………………………………………………………………………… 81

Устойчивость системы…………………………………………………………………………………………… 81

Устойчивость сети………………………………………………………………………………………………….. 82

Управление и контроль………………………………………………………………………………………………….. 82

Действия над целью……………………………………………………………………………………………………….. 83

Пример kill chain……………………………………………………………………………………………………………… 86

Алмазная модель……………………………………………………………………………………………………………………….. 87

Базовая модель……………………………………………………………………………………………………………….. 88

Расширение модели………………………………………………………………………………………………………… 88

ATT&CK и D3FEND…………………………………………………………………………………………………………………… 89

ATT&CK………………………………………………………………………………………………………………………….. 89

D3FEND……………………………………………………………………………………………………………………………. 91

Активная защита………………………………………………………………………………………………………………………… 91

Отказ………………………………………………………………………………………………………………………………… 93

Нарушение………………………………………………………………………………………………………………………. 93

Деградация……………………………………………………………………………………………………………………… 93

Обман………………………………………………………………………………………………………………………………. 94

Уничтожение…………………………………………………………………………………………………………………… 94

F3EAD…………………………………………………………………………………………………………………………………………. 95

Поиск……………………………………………………………………………………………………………………………….. 96

Фиксация…………………………………………………………………………………………………………………………. 96

Завершение……………………………………………………………………………………………………………………… 96

Эксплойт………………………………………………………………………………………………………………………….. 96

Анализ……………………………………………………………………………………………………………………………… 97

Распространение…………………………………………………………………………………………………………….. 97

Использование F3EAD……………………………………………………………………………………………………. 98

Выбор правильной модели……………………………………………………………………………………………………….. 99

Сценарий: Road Runner…………………………………………………………………………………………………………….. 99

Заключение………………………………………………………………………………………………………………………………. 101

Часть II. Практическое применение…………………………………….. 103

Глава 4. Поиск……………………………………………………………………………………… 105

Ориентирование на субъекта…………………………………………………………………………………………………. 106

Начните с известной информации………………………………………………………………………………. 107

Полезная информация на этапе поиска……………………………………………………………………… 107

Индикаторы компрометации………………………………………………………………………………. 109

Поведение……………………………………………………………………………………………………………… 109

Использование Kill chain………………………………………………………………………………………………. 110

Road Runner: построение начальной kill chain………………………………………………….. 110

Road Runner: разработка kill chain…………………………………………………………………….. 112

Цели……………………………………………………………………………………………………………………………….. 113

Ориентирование на жертву…………………………………………………………………………………………………….. 114

Использование целеуказания, ориентированного на жертву…………………………………… 115

Связь между жертвой и инфраструктурой…………………………………………………………. 115

Связь между жертвой и возможностью………………………………………………………………. 116

Связь между жертвой и противником…………………………………………………………………. 116

Ориентация на активы…………………………………………………………………………………………………………….. 117

Использование целеуказания, ориентированного на активы…………………………………… 118

Ориентация на возможности…………………………………………………………………………………………………… 118

Использование целеуказания, ориентированного на возможности………………………… 119

Ориентация на СМИ………………………………………………………………………………………………………………… 120

Ориентация на уведомления третьих лиц……………………………………………………………………………… 121

Определение приоритетов целеуказания………………………………………………………………………………. 122

Неотложные потребности……………………………………………………………………………………………. 122

Предыдущие инциденты………………………………………………………………………………………………. 123

Критичность………………………………………………………………………………………………………………….. 123

Организация деятельности по целеуказанию……………………………………………………………………….. 124

Жесткие зацепки…………………………………………………………………………………………………………… 124

Мягкие зацепки……………………………………………………………………………………………………………… 124

Группировка связанных зацепок………………………………………………………………………………… 124

Хранение и документирование зацепок……………………………………………………………………… 125

Процесс запроса информации………………………………………………………………………………………………… 125

Заключение………………………………………………………………………………………………………………………………. 126

Глава 5. Фиксация……………………………………………………………………………….. 127

Обнаружение вторжений………………………………………………………………………………………………………… 128

Сетевое оповещение…………………………………………………………………………………………………….. 128

Оповещение при проведении разведки………………………………………………………………. 129

Оповещение на этапе доставки…………………………………………………………………………… 130

Оповещение об управлении и контроле…………………………………………………………….. 131

Оповещение о воздействии………………………………………………………………………………….. 134

Системное оповещение………………………………………………………………………………………………… 135

Предупреждение об эксплуатации уязвимости…………………………………………………. 136

Оповещение при установке…………………………………………………………………………………. 136

Оповещение при воздействии……………………………………………………………………………… 137

Фиксация Road Runner…………………………………………………………………………………………………. 138

Сетевая активность………………………………………………………………………………………………. 138

Расследование вторжений………………………………………………………………………………………………………. 139

Анализ сети…………………………………………………………………………………………………………………… 140

Анализ трафика……………………………………………………………………………………………………. 140

Анализ на основе сигнатур…………………………………………………………………………………. 143

Анализ всего содержимого………………………………………………………………………………….. 145

Узнайте больше……………………………………………………………………………………………………. 147

Реагирование в реальном времени……………………………………………………………………………… 147

Анализ памяти………………………………………………………………………………………………………………. 149

Анализ диска…………………………………………………………………………………………………………………. 150

Аналитическая деятельность при анализе дисков……………………………………………. 151

Сбор данных при анализе дисков………………………………………………………………………. 151

Обнаружение и реагирование на уровне предприятия…………………………………………….. 151

Анализ вредоносного ПО…………………………………………………………………………………………….. 153

Базовый статический анализ………………………………………………………………………………. 153

Базовый динамический анализ…………………………………………………………………………… 154

Продвинутый статический анализ……………………………………………………………………… 155

Применение аналитической деятельности для анализа вредоносного ПО…….. 156

Сбор данных при анализе вредоносного ПО…………………………………………………….. 156

Узнайте больше об анализе вредоносного ПО………………………………………………….. 157

Обзор…………………………………………………………………………………………………………………………………………. 157

Охота………………………………………………………………………………………………………………………………………… 158

Разработка гипотез………………………………………………………………………………………………………. 158

Проверка гипотез………………………………………………………………………………………………………….. 159

Заключение………………………………………………………………………………………………………………………………. 159

Глава 6. Завершение…………………………………………………………………………….. 160

Завершить — не значит взламывать в ответ…………………………………………………………………………. 160

Этапы “Завершения”……………………………………………………………………………………………………………….. 161

Смягчение последствий……………………………………………………………………………………………….. 162

Смягчение последствий доставки……………………………………………………………………….. 162

Смягчение последствий управления и контроля……………………………………………….. 162

Смягчение последствий действий над целью…………………………………………………….. 163

Смягчение последствий Road Runner…………………………………………………………………. 164

Исправление………………………………………………………………………………………………………………….. 165

Исправление последствий эксплуатации уязвимости………………………………………. 165

Исправление последствий установки…………………………………………………………………. 166

Исправление действий над целью………………………………………………………………………. 167

Исправление последствий Road Runner…………………………………………………………….. 168

Перестройка архитектуры…………………………………………………………………………………………… 169

Перестройка архитектуры в связи с Road Runner…………………………………………….. 169

Принятие мер……………………………………………………………………………………………………………………………. 170

Отказ………………………………………………………………………………………………………………………………. 170

Нарушение……………………………………………………………………………………………………………………. 171

Деградация……………………………………………………………………………………………………………………. 172

Обман…………………………………………………………………………………………………………………………….. 172

Уничтожение…………………………………………………………………………………………………………………. 173

Систематизация данных об инцидентах……………………………………………………………………………….. 173

Инструменты для отслеживания действий…………………………………………………………………. 174

Личные заметки……………………………………………………………………………………………………. 174

Электронная таблица судьбы…………………………………………………………………………….. 175

Сторонние, нецелевые решения………………………………………………………………………….. 176

Специально разработанные инструменты………………………………………………………………… 176

Оценка ущерба…………………………………………………………………………………………………………………………. 178

Жизненный цикл отслеживания……………………………………………………………………………………………… 178

Создание……………………………………………………………………………………………………………………….. 178

Тестирование………………………………………………………………………………………………………………… 179

Развертывание………………………………………………………………………………………………………………. 179

Доработка……………………………………………………………………………………………………………………… 179

Вывод из эксплуатации……………………………………………………………………………………………….. 180

Заключение………………………………………………………………………………………………………………………………. 180

Глава 7. Эксплойт………………………………………………………………………………… 181

Тактические и стратегические петли OODA………………………………………………………………………….. 182

Как быть с этапом “Эксплойт”?……………………………………………………………………………………………… 183

Сбор информации……………………………………………………………………………………………………………………. 185

Цели сбора информации………………………………………………………………………………………………. 186

Использование предыдущих инцидентов…………………………………………………………………… 186

Сбор внешней информации (или проведение обзора литературы)…………………………. 187

Извлечение и хранение данных об угрозах…………………………………………………………………………… 188

Стандарты хранения данных об угрозах…………………………………………………………………… 188

Стандарты и форматы данных для индикаторов……………………………………………………… 188

Набор OASIS (он же STIX/TAXII)………………………………………………………………………. 189

Рабочая группа MILE………………………………………………………………………………………….. 190

OpenIOC………………………………………………………………………………………………………………… 191

Стандарты и форматы данных для стратегической информации…………………………… 192

ATT&CK………………………………………………………………………………………………………………… 192

VERIS…………………………………………………………………………………………………………………….. 193

CAPEC…………………………………………………………………………………………………………………… 194

Процесс извлечения……………………………………………………………………………………………………… 194

Шаг 1: Определите свои цели……………………………………………………………………………… 194

Шаг 2: Определите свои инструменты……………………………………………………………….. 195

Шаг 3: Определите систему или процесс, который будет использоваться…….. 195

Шаг 4: Запуск и итерации……………………………………………………………………………………. 196

Управление информацией………………………………………………………………………………………………………. 196

Платформы анализа угроз…………………………………………………………………………………………… 197

TIP………………………………………………………………………………………………………………………….. 198

MISP………………………………………………………………………………………………………………………. 198

CRITs…………………………………………………………………………………………………………………….. 198

YETI………………………………………………………………………………………………………………………. 198

Коммерческие решения……………………………………………………………………………………….. 199

Заключение………………………………………………………………………………………………………………………………. 199

Глава 8. Анализ……………………………………………………………………………………. 200

Основы анализа……………………………………………………………………………………………………………………….. 200

Двойственный процесс мышления………………………………………………………………………………. 201

Дедуктивные, индуктивные и абдуктивные рассуждения………………………………………… 202

Дедуктивные рассуждения………………………………………………………………………………….. 203

Индуктивные рассуждения………………………………………………………………………………….. 203

Абдуктивные рассуждения………………………………………………………………………………….. 204

Зачем рассуждать о рассуждениях?………………………………………………………………….. 205

Аналитические процессы и методы……………………………………………………………………………………….. 206

Структурированные аналитические методы (SAT)…………………………………………………… 206

Проверка ключевых предположений…………………………………………………………………. 209

Анализ конкурирующих гипотез………………………………………………………………………… 211

Создание, проверка и оценка индикаторов……………………………………………………….. 214

Контрарные методы…………………………………………………………………………………………….. 216

Колесо будущего………………………………………………………………………………………………….. 217

Анализ, ориентированный на цель……………………………………………………………………………… 217

Проведение анализа………………………………………………………………………………………………………………… 221

Что анализировать……………………………………………………………………………………………………….. 221

Обогащение данных…………………………………………………………………………………………………….. 223

Источники обогащения………………………………………………………………………………………… 223

Внутренняя информация об обогащении…………………………………………………………… 226

Использование возможностей обмена информацией………………………………………………… 227

Разработка гипотезы……………………………………………………………………………………………………. 228

Оценка ключевых предположений……………………………………………………………………………… 229

Аналитическая предвзятость………………………………………………………………………………………………….. 230

Учет предубеждений……………………………………………………………………………………………………. 231

Предвзятость подтверждения……………………………………………………………………………… 231

Предвзятость закрепления…………………………………………………………………………………… 231

Предвзятость в отношении доступности……………………………………………………………. 232

Эффект оркестра…………………………………………………………………………………………………… 232

Отзеркаливание……………………………………………………………………………………………………. 233

Суждения и выводы…………………………………………………………………………………………………………………. 233

Заключение………………………………………………………………………………………………………………………………. 234

Глава 9. Распространение…………………………………………………………………….. 236

Цели заказчиков аналитической деятельности…………………………………………………………………….. 237

Аудитория………………………………………………………………………………………………………………………………… 237

Заказчик-руководитель/лидер…………………………………………………………………………………….. 238

Внутренние технические заказчики……………………………………………………………………………. 240

Внешние технические заказчики…………………………………………………………………………………. 241

Разработка портретов клиентов………………………………………………………………………………….. 243

Действенность………………………………………………………………………………………………………………………….. 245

Авторы………………………………………………………………………………………………………………………………………. 247

Процесс написания………………………………………………………………………………………………………………….. 249

Планирование……………………………………………………………………………………………………………….. 249

Черновик………………………………………………………………………………………………………………………… 250

Начните с тезисов………………………………………………………………………………………………… 250

Начните с фактов…………………………………………………………………………………………………. 250

Начните с конспекта или ключевых пунктов…………………………………………………….. 250

Редактирование…………………………………………………………………………………………………………….. 251

Форматы продуктов аналитической деятельности………………………………………………………………. 253

Короткоформатные продукты…………………………………………………………………………………….. 254

Сводка событий……………………………………………………………………………………………………. 255

Целевой пакет……………………………………………………………………………………………………….. 256

Отчет IOC……………………………………………………………………………………………………………… 257

Полноформатные продукты………………………………………………………………………………………… 258

Отчет о вредоносном ПО……………………………………………………………………………………… 259

Отчет о кампании…………………………………………………………………………………………………. 262

Оценка аналитической деятельности…………………………………………………………………. 267

Процесс запроса информации (RFI)……………………………………………………………………………. 268

Запрос RFI…………………………………………………………………………………………………………….. 269

Ответ на RFI………………………………………………………………………………………………………….. 269

Пример процесса RFI…………………………………………………………………………………………… 270

Автоматизированные продукты потребления…………………………………………………………… 271

Неструктурированные и полуструктурированные IOC…………………………………… 272

Сетевые сигнатуры Snort…………………………………………………………………………………….. 272

Сигнатуры файловой системы в Yara………………………………………………………………… 274

Автоматизированные форматы IOC…………………………………………………………………… 275

Установление ритма………………………………………………………………………………………………………………… 276

Распространение………………………………………………………………………………………………………….. 276

Обратная связь……………………………………………………………………………………………………………… 277

Регулярные продукты…………………………………………………………………………………………………… 278

Заключение………………………………………………………………………………………………………………………………. 278

Часть III. Путь вперед…………………………………………………………………… 281

Глава 10. Стратегическая аналитическая деятельность……………………….. 283

Что такое стратегическая аналитическая деятельность?……………………………………………………. 284

Роль стратегической аналитической деятельности в реагировании на инциденты на основе аналитических данных         286

Аналитическая деятельность за рамками реагирования на инциденты…………………………….. 287

Красная команда………………………………………………………………………………………………………….. 287

Управление уязвимостями…………………………………………………………………………………………… 289

Архитектура и инжиниринг…………………………………………………………………………………………. 289

Конфиденциальность, безопасность и физическая защита………………………………………. 290

Построение фрейма с помощью стратегической аналитической деятельности………………… 290

Модели для стратегической аналитической деятельности……………………………………… 291

Целевые модели……………………………………………………………………………………………………. 292

Цикл стратегической аналитической деятельности…………………………………………………………….. 298

Установление стратегических требований………………………………………………………………… 298

Сбор……………………………………………………………………………………………………………………………….. 299

Геополитические источники……………………………………………………………………………….. 299

Экономические источники…………………………………………………………………………………… 300

Исторические источники……………………………………………………………………………………… 301

Деловые источники………………………………………………………………………………………………. 301

Анализ……………………………………………………………………………………………………………………………. 302

Процессы анализа стратегической аналитической деятельности………………….. 302

Распространение………………………………………………………………………………………………………….. 305

Движение к упреждающей аналитической деятельности……………………………………………………. 306

Заключение………………………………………………………………………………………………………………………………. 307

Глава 11. Построение программы аналитической деятельности…………… 309

Вы готовы?……………………………………………………………………………………………………………………………….. 309

Планирование программы………………………………………………………………………………………………………. 311

Определение заинтересованных сторон…………………………………………………………………….. 312

Команда реагирования на инциденты……………………………………………………………….. 312

Центр/группа операций по обеспечению безопасности (SOC)………………………… 312

Команды по управлению уязвимостями…………………………………………………………….. 312

Красные команды / атакующие инженеры………………………………………………………… 313

Команды по обеспечению доверия и безопасности………………………………………….. 313

Руководители служб информационной безопасности (CISO)………………………….. 314

Конечные пользователи………………………………………………………………………………………. 314

Определение целей……………………………………………………………………………………………………….. 314

Определение критериев успеха…………………………………………………………………………………… 315

Определение требований и ограничений…………………………………………………………………… 316

Думайте стратегически………………………………………………………………………………………………… 317

Определение метрик…………………………………………………………………………………………………….. 317

Портреты заинтересованных лиц…………………………………………………………………………………………… 318

Тактические сценарии использования…………………………………………………………………………………… 319

Поддержка SOC…………………………………………………………………………………………………………….. 319

Инжиниринг обнаружения и оповещения………………………………………………………….. 319

Сортировка…………………………………………………………………………………………………………… 320

Ситуационная осведомленность………………………………………………………………………… 320

Управление индикаторами………………………………………………………………………………………….. 320

Управление платформой анализа угроз…………………………………………………………….. 320

Управление сторонними аналитическими данными и каналами……………………. 321

Обновление индикаторов…………………………………………………………………………………….. 321

Оперативные сценарии использования…………………………………………………………………………………. 322

Отслеживание кампании……………………………………………………………………………………………… 322

Определение направленности кампании…………………………………………………………… 323

Определение инструментов и тактик………………………………………………………………….. 323

Поддержка ответных мер…………………………………………………………………………………….. 323

Стратегические сценарии использования……………………………………………………………………………… 323

Поддержка архитектуры……………………………………………………………………………………………… 324

Улучшение защиты………………………………………………………………………………………………. 324

Сосредоточьте защиту на угрозах……………………………………………………………………… 324

Оценка рисков и стратегическая ситуационная осведомленность………………………….. 324

От стратегического к тактическому или от тактического к стратегическому?………………….. 325

Потребности в критически важной информации……………………………………………………….. 326

Команда аналитической деятельности…………………………………………………………………………………. 326

Создание разносторонней команды…………………………………………………………………………… 327

Развитие команд и процессов………………………………………………………………………………………. 328

Заключение………………………………………………………………………………………………………………………………. 329

Предметный указатель…………………………………………………………………………. 331

Об авторах……………………………………………………………………………………………. 334

Об изображении на обложке………………………………………………………………… 335

Опубликовано

2-е издание книги “Android глазами хакера”

Android глазами хакера. 2-е издание

Рассмотрена внутренняя архитектура ОС Android, используемые ею разделы и файловые системы, принцип работы механизмов обновления и внутренних инструментов безопасности. Рассказано о разграничении доступа в ОС Android, о привилегиях, методах получения прав root, кастомизации и установке нестандартных прошивок. Описаны инструменты для дизассемблирования, отладки и анализа кода мобильных приложений, приведены примеры модификации кода с целью изменения функций ПО и внедрения в приложение сторонних модулей. Даны подробные рекомендации по деобфускации кода и обходу антиотладки, а также практические советы по защите собственных приложений от декомпиляции и исследования. Приводятся сведения о вредоносных программах для платформы Android, используемых ими уязвимостях, даны примеры кода таких программ. Рассказывается об использовании стандартных функций Android в нестандартных целях и способах противодействия вредоносному ПО. Во втором издании приводятся сведения об изменениях и нововведениях в Android 14.

Для разработчиков мобильных приложений, реверс-инженеров, специалистов по информационной безопасности и защите данных

БЕЗОПАСНОСТЬ ANDROID, ВЗЛОМ ПРИЛОЖЕНИЙ И ЗАЩИТА ОТ ВЗЛОМА

В книге рассмотрены:

  • Безопасность Android
  • Внутреннее устройство системы
  • Кастомизация прошивки
  • Получение root
  • Практические приемы взлома
  • Реверс-инжиниринг
  • Предотвращение взлома и исследования приложений
  • Мобильные вредоносные программы

Книга состоит из трех частей:

В первой части подробно рассказывается об архитектуре и внутреннем устройстве Android, используемых разделах и файловых системах, разграничении доступа, установке обновлений ОС, рутовании, кастомизации прошивок, а также о принципах работы встроенной системы безопасности.

Вторая часть посвящена практическим методам дизассемблирования, реверс-инжиниринга, исследования и модификации мобильных приложений, борьбе с обфускацией и антиотладкой. Приводятся конкретные способы внедрения в приложения Android постороннего кода и изменения их функций. В ней же даны советы по противодействию взлому, исследованию и модификации ПО.

В третьей части подробно рассматривается архитектура вредоносных программ для Android, а также уязвимости ОС, используемые троянами для проникновения на устройство. Даны примеры выполнения несанкционированных пользователем действий с помощью стандартных функций Android, а для наглядности приводится и подробно описывается код полноценной вредоносной программы, на примере которой можно изучить методы противодействия такому ПО.

Если ты хочешь узнать, как устроен Android «под капотом», как работает его система безопасности и как ее обойти, как действуют мобильные трояны, как дизассемблировать и взламывать чужие приложения и как защитить от взлома свои, — поздравляю, ты нашел настоящее сокровище! Книга будет интересна и полезна любому читателю: от начинающего программиста до профессионала.
Валентин Холмогоров, ведущий редактор журнала «Хакер»

Книгу “Android глазами хакера. 2-е издание” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Введение………………………………………………………………………………………………….. 9

Что вы найдете в этой книге?……………………………………………………………………………………………………. 10

Для кого эта книга?……………………………………………………………………………………………………………………. 11

Предисловие ко второму изданию……………………………………………………………………………………………. 11

Условные обозначения……………………………………………………………………………………………………………… 12

Приложение AnTrack…………………………………………………………………………………………………………………. 12

Часть I…………………………………………………………………………………………………. 13

Глава 1. Пять столпов Android. Технологии, лежащие в основе
самой популярной ОС……………………………………………………………………………. 15

Виртуальная машина………………………………………………………………………………………………………………… 15

Многозадачность………………………………………………………………………………………………………………………. 18

Binder…………………………………………………………………………………………………………………………………………… 21

Сервисы Google………………………………………………………………………………………………………………………….. 23

Ядро Linux и рантайм……………………………………………………………………………………………………………….. 24

Android Go…………………………………………………………………………………………………………………………………… 26

Глава 2. От кнопки включения до рабочего стола…………………………………. 29

Шаг первый. Aboot и таблица разделов………………………………………………………………………………….. 29

Шаг второй. Раздел boot……………………………………………………………………………………………………………. 31

Шаг второй, альтернативный. Раздел recovery……………………………………………………………………….. 33

Шаг третий. Инициализация…………………………………………………………………………………………………….. 33

Шаг четвертый. Zygote и app_process………………………………………………………………………………………. 35

Глава 3. Treble, A/B-разметка, динамические и модульные обновления…. 39

Treble…………………………………………………………………………………………………………………………………………… 40

A/B-разметка………………………………………………………………………………………………………………………………. 41

Динамические обновления………………………………………………………………………………………………………… 44

Виртуальная A/B-разметка………………………………………………………………………………………………………. 46

Модульные обновления…………………………………………………………………………………………………………….. 46

Трюк с сохранением пространства………………………………………………………………………………………….. 48

Глава 4. Броня Android…………………………………………………………………………… 51

Полномочия………………………………………………………………………………………………………………………………… 52

Ограничения……………………………………………………………………………………………………………………………….. 55

Запрет доступа к другим приложениям……………………………………………………………………….. 56

Шифрование данных…………………………………………………………………………………………………………………. 57

Доверенная среда исполнения………………………………………………………………………………………………….. 59

Доверенная загрузка………………………………………………………………………………………………………………….. 61

Защита от срыва стека………………………………………………………………………………………………………………. 62

SELinux……………………………………………………………………………………………………………………………………….. 65

Seccomp-bpf……………………………………………………………………………………………………………………………….. 66

Виртуализация…………………………………………………………………………………………………………………………… 68

Google Play Protect……………………………………………………………………………………………………………………… 69

Smart Lock………………………………………………………………………………………………………………………………….. 70

WebView……………………………………………………………………………………………………………………………………… 72

SafetyNet (Play Integrity API)…………………………………………………………………………………………………….. 73

Kill Switch…………………………………………………………………………………………………………………………………….. 74

Цифровые подписи APK…………………………………………………………………………………………………………….. 74

Итог……………………………………………………………………………………………………………………………………………… 76

Глава 5. Альтернативные прошивки, рутинг и кастомизация……………….. 77

GrapheneOS…………………………………………………………………………………………………………………………………. 77

Tor……………………………………………………………………………………………………………………………………………….. 79

Рутинг………………………………………………………………………………………………………………………………………….. 80

SuperSU……………………………………………………………………………………………………………………………. 82

Magisk………………………………………………………………………………………………………………………………. 82

Модификации…………………………………………………………………………………………………………………………….. 83

Часть II……………………………………………………………………………………………….. 85

Глава 6. Основы взлома…………………………………………………………………………. 87

Делаем платное бесплатным……………………………………………………………………………………………………. 87

Снаряжаемся…………………………………………………………………………………………………………………… 88

Вскрываем подопытного……………………………………………………………………………………………….. 89

Изучаем код…………………………………………………………………………………………………………………….. 90

Вносим правки………………………………………………………………………………………………………………… 92

Глава 7. Внедряемся в чужое приложение………………………………………………. 95

Ищем точку входа……………………………………………………………………………………………………………………… 95

Пишем payload…………………………………………………………………………………………………………………………… 97

Вызываем payload……………………………………………………………………………………………………………………… 98

Крадем данные………………………………………………………………………………………………………………………… 100

Периодические задачи…………………………………………………………………………………………………………….. 103

Глава 8. Продираемся сквозь обфусцированный код…………………………… 105

Как работает обфускация……………………………………………………………………………………………………….. 105

Упаковщики……………………………………………………………………………………………………………………………… 109

Деобфускаторы………………………………………………………………………………………………………………………… 109

Небольшой пример………………………………………………………………………………………………………………….. 112

Глава 9. Взлом с помощью отладчика………………………………………………….. 117

Отладчик и реверсинг……………………………………………………………………………………………………………… 117

Флаг отладки……………………………………………………………………………………………………………………………. 118

Декомпиляция и дизассемблирование…………………………………………………………………………………… 118

Android Studio…………………………………………………………………………………………………………………………… 118

Используем дизассемблированный код…………………………………………………………………………………. 121

Глава 10. Frida……………………………………………………………………………………… 123

Dynamic Instrumentation Toolkit…………………………………………………………………………………………….. 123

Первые шаги…………………………………………………………………………………………………………………………….. 124

Пишем код………………………………………………………………………………………………………………………………… 126

Внедряемся……………………………………………………………………………………………………………………………….. 127

Ломаем CrackMe……………………………………………………………………………………………………………………… 129

Перехват нативных библиотек……………………………………………………………………………………………….. 131

Другие примеры применения Frida…………………………………………………………………………………………. 132

Обход защиты на снятие скриншотов………………………………………………………………………… 133

Извлечение SSL-сертификата приложения из KeyStore…………………………………………….. 134

Обход детекта root……………………………………………………………………………………………………….. 135

Обход упаковщиков……………………………………………………………………………………………………… 136

Выводы……………………………………………………………………………………………………………………………………… 137

Глава 11. Drozer и другие инструменты……………………………………………….. 139

Активности……………………………………………………………………………………………………………………………….. 140

Перехват интентов…………………………………………………………………………………………………………………… 142

Перехват возвращаемого значения………………………………………………………………………………………… 143

Content Provider………………………………………………………………………………………………………………………… 144

Сервисы…………………………………………………………………………………………………………………………………….. 145

Другие возможности………………………………………………………………………………………………………………… 146

Другие уязвимости…………………………………………………………………………………………………………………… 146

Выводы………………………………………………………………………………………………………………………….. 149

Другие инструменты……………………………………………………………………………………………………………….. 149

Статический анализ……………………………………………………………………………………………………… 149

Jadx…………………………………………………………………………………………………………………….. 149

JEB………………………………………………………………………………………………………………………. 150

Apktool……………………………………………………………………………………………………………….. 150

APKiD………………………………………………………………………………………………………………….. 150

Simplify……………………………………………………………………………………………………………….. 151

DeGuard………………………………………………………………………………………………………………. 151

Bytecode Viewer…………………………………………………………………………………………………. 152

QARK………………………………………………………………………………………………………………….. 153

Динамический анализ………………………………………………………………………………………………….. 153

Objection…………………………………………………………………………………………………………….. 154

Inspeckage………………………………………………………………………………………………………….. 154

Что еще может пригодиться?………………………………………………………………………………………………….. 155

Часть III…………………………………………………………………………………………….. 157

Глава 12. История вирусописательства для Android…………………………….. 159

До нашей эры, или Как написать вирус за 15 минут……………………………………………………………. 159

Geinimi и все-все-все………………………………………………………………………………………………………………… 160

DroidDream и начало борьбы за чистоту маркета……………………………………………………………….. 161

Zeus-in-the-Mobile…………………………………………………………………………………………………………………….. 162

Первый IRC-бот……………………………………………………………………………………………………………………….. 164

Первый полиморфный троян…………………………………………………………………………………………………… 164

Вирус-матрешка………………………………………………………………………………………………………………………. 165

Действительно продвинутый троян……………………………………………………………………………………….. 167

Ransomware……………………………………………………………………………………………………………………………… 168

Adware………………………………………………………………………………………………………………………………………. 170

Click fraud…………………………………………………………………………………………………………………………………. 170

А как же другие ОС?………………………………………………………………………………………………………………… 171

Глава 13. Современные образцы вредоносных программ…………………….. 173

Toast Amigo………………………………………………………………………………………………………………………………. 173

Android/Banker.GT!tr.spy…………………………………………………………………………………………………………. 173

Chrysaor…………………………………………………………………………………………………………………………………….. 174

Rootnik………………………………………………………………………………………………………………………………………. 175

Mandrake………………………………………………………………………………………………………………………………….. 176

Joker…………………………………………………………………………………………………………………………………………… 177

MalLocker…………………………………………………………………………………………………………………………………. 178

Вредоносные библиотеки……………………………………………………………………………………………………….. 180

Уязвимости, используемые троянами…………………………………………………………………………………….. 181

StrandHogg — уязвимость с подменой приложений………………………………………………….. 181

Cloak & Dagger………………………………………………………………………………………………………………. 182

Перекрытие диалогов запросов разрешений……………………………………………………………… 184

Глава 14. Пишем вредоносную программу для Android………………………… 185

Каркас………………………………………………………………………………………………………………………………………. 185

Информация о местоположении…………………………………………………………………………………………….. 187

Список установленных приложений……………………………………………………………………………………… 189

Дамп SMS…………………………………………………………………………………………………………………………………. 190

Запись аудио……………………………………………………………………………………………………………………………. 191

Съемка………………………………………………………………………………………………………………………………………. 192

Складываем все вместе……………………………………………………………………………………………………………. 198

Задания по расписанию………………………………………………………………………………………………. 198

Снимок при включении экрана……………………………………………………………………………………. 199

Запуск при загрузке……………………………………………………………………………………………………… 199

Запись аудио по команде…………………………………………………………………………………………….. 200

Отправка данных на сервер………………………………………………………………………………………… 201

Выводы……………………………………………………………………………………………………………………………………… 201

Глава 15. Используем возможности Android в личных целях……………….. 203

IPC…………………………………………………………………………………………………………………………………………….. 203

Интенты…………………………………………………………………………………………………………………………. 204

Широковещательные сообщения………………………………………………………………………………… 205

Логирование звонков……………………………………………………………………………………………………. 207

Скрытые API…………………………………………………………………………………………………………………………….. 208

Оригинальный фреймворк……………………………………………………………………………………………. 210

Рефлексия………………………………………………………………………………………………………………………. 211

Какие еще скрытые API существуют?………………………………………………………………………… 211

Запрет рефлексии в Android 9……………………………………………………………………………………… 211

Системный API…………………………………………………………………………………………………………………………. 212

Немного теории…………………………………………………………………………………………………………….. 212

Уровень доступа privileged…………………………………………………………………………………………… 213

Уровень доступа signature……………………………………………………………………………………………. 215

Уровень доступа development…………………………………………………………………………………….. 215

Права администратора и сервис Accessibility……………………………………………………………………….. 216

Нажимаем кнопки смартфона……………………………………………………………………………………… 217

Извлекаем текст из полей ввода………………………………………………………………………………….. 219

Блокируем устройство и защищаемся от удаления………………………………………………….. 221

Перехватываем и смахиваем уведомления………………………………………………………………… 224

Права root…………………………………………………………………………………………………………………………………. 226

Запускаем команды……………………………………………………………………………………………………… 226

Получаем права суперпользователя………………………………………………………………………….. 228

Несколько примеров…………………………………………………………………………………………………….. 230

Сторонние библиотеки………………………………………………………………………………………………… 233

Расширение функциональности……………………………………………………………………………………………… 233

Плагины…………………………………………………………………………………………………………………………. 233

API………………………………………………………………………………………………………………………. 234

Простейший плагин…………………………………………………………………………………………… 234

Поиск плагинов………………………………………………………………………………………………….. 235

Запуск функций плагина…………………………………………………………………………………… 236

Динамическая загрузка кода……………………………………………………………………………………….. 238

Простейший пример………………………………………………………………………………………….. 238

Долой рефлексию………………………………………………………………………………………………. 240

Когда модулей много………………………………………………………………………………………… 241

Берем модули с собой……………………………………………………………………………………….. 242

Глава 16. Скрываем и запутываем код………………………………………………… 245

Обфускация………………………………………………………………………………………………………………………………. 245

Собственный словарь…………………………………………………………………………………………………… 246

Скрытие строк………………………………………………………………………………………………………………………….. 247

Сохраняем строки в strings.xml……………………………………………………………………………………. 247

Разбиваем строки на части………………………………………………………………………………………….. 248

Кодируем помощью XOR…………………………………………………………………………………………….. 248

Шифруем строки…………………………………………………………………………………………………………… 250

Советы по использованию шифрования…………………………………………………………………….. 252

Храним данные в нативном коде……………………………………………………………………………………………. 253

«Крашим» измененное приложение……………………………………………………………………………………….. 254

Сверяем цифровую подпись………………………………………………………………………………………… 255

Проверяем источник установки…………………………………………………………………………………… 257

Защита от реверса и отладки…………………………………………………………………………………………………. 257

Root………………………………………………………………………………………………………………………………… 257

Эмулятор……………………………………………………………………………………………………………………….. 259

Отладчик……………………………………………………………………………………………………………………….. 261

Xposed……………………………………………………………………………………………………………………………. 263

Frida……………………………………………………………………………………………………………………………….. 264

Клонирование……………………………………………………………………………………………………………….. 267

Предметный указатель…………………………………………………………………………. 268

Зобнин Евгений Евгеньевич

Зобнин Евгений Евгеньевич, редактор журнала «Хакер», программист, в прошлом системный администратор. Автор статей на тему внутреннего устройства настольных и мобильных ОС, безопасности и взлома. Имеет 20-летний опыт в области UNIX-подобных операционных систем, последние 10 лет пишет статьи об устройстве Android. Автор популярного приложения AIO Launcher.

Опубликовано

Уникальная книга: “Хакерство. Физические атаки с использованием хакерских устройств”

Хакерство. Физические атаки с использованием хакерских устройств

Представляем уникальную книгу, подготовка которой заняла у нас очень много времени и потребовала значительных усилий. Но оно того стоило!
📚Книгу «Хакерство. Физические атаки с использованием хакерских устройств» написал Андрей Жуков — этичный хакер, пентестер, ведущий специалист по анализу защищенности в компании «Уральский центр систем безопасности» (УЦСБ).

Книга посвящена физическим атакам на беспроводные сети и компьютеры с использованием самодельных хакерских устройств и защите от них. Показан способ дампа памяти компьютера при помощи обычной флешки, метод перехвата сетевого трафика посредством зажимов-«крокодилов». Подробно освещены различные атаки BadUSB, продемонстрирован метод организации несанкционированного доступа к компьютеру при помощи 4G-модема и подключения к локальной сети через хакерское устройство на базе одноплатного компьютера. Описаны атаки на беспроводные сети и уличные IP-камеры с помощью самодельного устройства Wi-Fi Pineapple. Продемонстрирован способ атаки на сеть и устройства с использованием дрона, оборудованного одноплатным компьютером. Описана конструкция защищенного от помех квадрокоптера с управлением по мобильной сотовой сети. Рассказано о том, как превратить обычный мобильный телефон в «трекер» или хакерское устройство, позволяющее управлять гаражными воротами или шлагбаумами.

Для пентестеров и специалистов по информационной безопасности

В книге описано множество атак, которые могут быть совершены с использованием популярных беспроводных технологий и устройств, собранных самостоятельно из общедоступных недорогих деталей, а также показаны способы защиты от них Одни атаки потребуют физического присутствия, другие могут быть проведены на расстоянии. Многие из них потребуют времени, а некоторые позволяют взломать компьютер за секунду.

 

Читатель узнает:

  • как сдампить оперативную память компьютера или ноутбука с помощью обычной флешки;
  • как сетевой трафик может быть перехвачен с использованием зажимов-«крокодильчиков»;
  • как хакеры похищают корпоративные пароли в метро и общественном транспорте;
  • как пролетающий мимо окна дрон может взломать компьютер в мгновение ока, даже если он расположен на 25-м этаже;
  • как построить на базе дешевого квадрокоптера такой «хакерский дрон», способный противостоять «глушилкам» и летать на десятки километров, не теряя связи с оператором;
  • как с помощью подключаемого устройства перехватывать сетевой трафик заблокированного компьютера;
  • как подключаться к IP-камерам на столбах;
  • как запустить Linux на телефоне, подключать к нему разнообразные хакерские устройства и управлять гаражными воротами или шлагбаумами, словно в компьютерной игре про хакеров.

Книгу “Хакерство. Физические атаки с использованием хакерских устройств” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Жуков Андрей

Жуков Андрей Николаевич, пентестер с восьмилетним стажем. Ведущий специалист по анализу защищенности в компании «Уральский центр систем безопасности» (УЦСБ). Обладатель сертификатов OSCP, OSCE, OSWE. Автор статей в журналах «Хакер» и «PentestMagazine», докладов на международных конференциях Positive Hack Days и Zero Nights.