Перейти к содержанию

Threat modeling

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

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

Основными понятиями в моделировании угроз являются "Угроза", "Уязвимость", "Риск". Описание этих терминов приведено тут. Если коротко о каждом, то:

  • Угроза - что-то, что способно нанести вред

  • Уязвимость - характеристика объекта, которая может быть использована угрозой

  • Риск - вероятность того, что угроза воспользуется уязвимостью и нанесет вред

Общий принцип моделирования угроз

Для моделирования угроз существуют различные фреймворки, однако, в общем случае, моделирование угроз сводится к следующему циклическому (это важно) процессу.

1. Определение области защиты

Необходимо определить активы которые подлежат защите (Данные, Информационные системы и т.д.)

2. Инвентаризация активов

Необходимо получить полное понимание взаимосвязи всех составляющих актива (Оборудование, сети, ПО ит.д.). Все составляющие должны быть проинвентаризированы: определено их местонахождение, ответственные работники и т.д.

3. Идентификация угроз

Получив полное представление о защищаемых объектах определяются угрозы которые могут привести к нарушению их работоспособного состояния.

4. Анализ уязвимостей и приоритизация рисков

Зная защищаемые объекты и возможные угрозы, следует определить уязвимости объектов. На основе данных о существующих уязвимостях выполняется приоритизация рисков.

5. Разработка и применение мер защиты

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

6. Мониторинг и оценка эффективности

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

Следует помнить, что это общее описание процесса. В каждом конкретном случае он будет дополнятся необходимыми этапами.

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

В дополнении к вышеприведенному общему принципу построения модели угроз, последняя может быть составлена путём построения "Дерева атак".

Дерево атак представляет из себя диаграмму в вершине которой указывается конечная цель нарушителя. отвевлениями первого порядка являются общие стратегии достижения конечной цели. Еще ниже распологаются способы реализации конкретной стратегии.

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

Моделирование угроз с MITRE ATT&CK

MITRE ATT&CK (Adversarial Tactics, Techniques and Common Knowledge) - обширная общедоступная база знаний о поведении злоумышленников в области ИБ.

Организована в виде матрицы в которой собраны тактики (цели злоумышленников) и техники (способы достижения целей). Кроме того, содержит в себе:

  • подробное описание каждой тактики и техники

  • способы обнаружения

  • способы противодействия

  • реальные примеры применения конкретной тактики/техники конкретными группировками

  • ссылки на внешние дополнительные ресурсы с дополнительной информацией

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

Для работы с матрицей ATT&CK имеется веб-сервис ATT&CK Navigator

Другие примеры использование MITRE ATT&CK

Кроме включения матрицы в процесс моделирования угроз, её можно использовать и для других целей (список конечно же не полный):

Определение потенциальных путей атаки конкретной инфраструктуры

С помощью матрицы можно увидеть как происходят атаки на конкретное ПО. К примеру, можно отфильтровать матрицу чтобы увидеть все тактики/техники/процедуры связанные, например, с MS Office365

Разработка сценариев атак

Матрица содержит в себе сценарии атак известных APT группировок. Изучая их, можно подготовить свои информационные системы к потенциальным атакам с их стороны.

DREAD фреймворк

Риск-ориентированный подход к моделированию угроз разработанный в Microsoft.

Категория Определение Краткое определение
Damage Потенциальный вред в результате успешной эксплуатации уязвимости. Насколько я пострадаю от атаки?
Reproductibility Сложность воспроизводимости уязвимости. Насколько легко воспроизвести атаку?
Exploitability Сложность эксплуатации уязвимости. Сколько времени нужно потратить для реализации атаки?
Affected Users Количество или часть пользователей на которых повлияла уязвимость. Сколько пользователей пострадает?
Discoverability Сложность нахождения уязвимости атакующим Насколько легко обнаружить уязвисость?

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

исходя из которой каждой конкретной угрозе можно вычислить значение, например:

Угроза запуска RCE (Оценка 8), т.к.:
Damage: 10
Reproductibility: 7.5
Exploitability: 10
Affected Users: 10
Discoverability: 2.5

STRIDE фреймворк

Так же разработанный в Microsoft фреймворк, созданный для идентификации и категоризации потенциальных угроз при проектировании и разработке ПО.

Категория Описание Нарушаемая политика Пример
Spoofing Несанкионированный доступ или подмена пользователя/системы Аутентификация Отправка писем от имени друго пользователя. Подделельный сайт
Tampering Несанкионированная подмена информации или исходного кода Целостность Обновление пароля другого пользователя. Бэкдоры в приложениях
Repudiation Недостаточное логирование или другие способы возможности отказа от проделанных действий Неотказуемость Отказ от факта отправки денежных средств
Information Disclosure Несанкционированный доступ к конфиденциальной информации Конфиденциальность Раскрытие информации из-за ошибок конфигурации БД
Denial of Service Нарушение работы системы приводящее к невозможности доступа к ней легитимных пользователей Доступность DOS на сайт. Шифровальщики
Elevation of privilege Несанкионированное увеличение уровня привилегий приводящиих Авторизация Получение прав локального админа

Как работать со STRIDE?

  • Декомпозиция

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

  • Категорирование

Для каждого компонента декомпозированной системы подбираем соответствующую STRIDE категорию. Изучаем потенциальные угрозы и уязвимости для каждой из отобранных категорий.

  • Оценка угроз

Оцениваем вероятности возникновения каждой из выбранных угроз.

  • Подбор средств защиты

Подбираются или разрабатываются способы защиты в соотвествии с категориями STRIDE. Например:

Случай: угроза отправки фишинговых писем от имени организации.
Причина: недостаточная защита почтового сервера. Недостаточное логирование.
Категории STRIDE: Spoofing, Repudiation
Методы защиты: Применение DMARC, DKIM, SPF. Изменение уровня логирования.

  • Валидация и верификация

Проверка эффективности внедренных средств защиты.

  • Дальнейшее улучшение

Регулярный пересмотр и обновление модели угроз. Мониторинг эффективности внедренных средств защиты и системы в целом, на предмет возможного добавления новых мер.