13.05.2016

Средства моделирования угроз: обзор существующих решений

Как и обещал публикую заметку с обзором средств моделирования угроз. Сразу надо сказать, что все эти решения врядли имеют свою, вполне конкретную сферу применения. Какие-то применяются в процессе разработки ПО и для других задач неприменимы, какие-то являются внутренними решениями, какие-то ориентированы на отдельные отрасли или вертикали. Универсального решения, да еще и под требования наших регуляторов, пока нет.

Начну я обзор с уже упомянутого мной ранее решения ADTool, которое входит в состав обучающей платформы CybatiWorks. Расшифровывается ADTool как "Attack-Defense Tree Tool" и разработано в университете Люксембурга в рамках проекта ATREES по разработке инструментария по составлению дерева атак и защитных мер.


ADTool, доступный в исходных кодах, может быть использован только как средство автоматизации и визуализации. Никаких библиотек (банков данных) к нему не прилагается. На сайте разработчиков есть несколько готовых моделей угроз.


В 2006-м году стартовал проект Trike, который включает в себя разработку методологии и инструментария для моделирования угроз. Сама методика разрабатывалась еще в 2003-2005-м годах, но оформилась в открытый проект она чуть позже. Реализация Trike доступна в двух вариантах. Первый - обычная табличка в Excel (Mac тоже поддерживается), в которой куча вкладок и опросников, которые надо заполнить для формирования модели угроз.


К таблице прилагается подробная подсказка, ориентированная на разные целевые аудитории - разработчики, тестировщики, архитекторы и т.п. Вторым вариантом реализации является отдельное приложение, написанное на Smalltalk (авторы говорят, что так сложилось исторически). Чтобы запустить его нужно запустить предварительно виртуалку на базе Squeak. В целом, надо признать, что вариант достаточно специфичен; я использовал только первый - более привычные таблицы Excel.


Компания Microsoft является одной из широко рекламирующих свой подход к безопасной разработке компанией и немудрено, что у нее есть и инструмент для моделирования угроз в соответствие с их методикой, неплохой описанной в книге бывшего сотрудника Microsoft Адама Шостака. Прежняя версия этого решения называлась Threat Analysis & Modeling Tool,


а текущая - MS Threat Modeling Tool 2016.


Решение Microsoft бесплатно и ориентировано на разработчиков ПО. Оно может быть интегрировано с различными системами, используемыми при отслеживании багов и иных проблем в ПО, что делает этот продукт уникальным среди аналогичных доступных на рынке решений. В систему встроено некоторое количество шаблонов проблем в соответствие с моделью STRIDE (аббревиатура, созданная по первым буквам шести самых распространенных угроз для ПО, - spoofing identity, tampering of data, repudation, information disclosure, denial of service, elevation of privelege).


Также в MS Threat Modeling Tool встроена подсистема визуализации информационных потоков (Data Flow Diagrams) и системе генерации отчетов, делающих это решение очень удобным в использовании.


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


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


Еще одним схожим инструментом является проект канадских студентов SeaSponge, ставший победителем конкурса Mozilla в 2014-м году. Проект, ориентированный на разработчиков ПО, доступен на Github, а также в виде онлайн-версии инструмента. Из минусов могу отметить отсутствие предопределенных шаблонов угроз - все надо писать с нуля самостоятельно. Никаких библиотек угроз тоже в SeaSponge нет.

Еще одним, активно рекламируемым инструментом для моделирования угроз является ThreatModeler от MyAppSecurity. Он реализует принцип "визуализации диаграммы связей" (mind map), но с ориентацией на процесс идентификации угроз.


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


Кстати ThreatModeler - не единственный, кто придумал использовать идеи MindMap для моделирования угроз. Есть, например, проект ThreatMind, который пытается объединить угрозы и бесплатное решение по созданию диаграмм связей Freemind.

Из российских игроков можно вспомнить продукты, существовавшего ранее НТЦ "Сфера", выпустившего чуть ли не первое в России средство по автоматизации процесса моделирования угроз по документам ФСТЭК, ФСБ и ЦБ. К сожалению данная компания прекратила свое существование - их сайт уже давно не обслуживается, а продукция не обновлялась.

Зато продолжает здравствовать и развиваться другая отечественная компания - R-Vision, которая предлагает одноименную модульную систему обеспечения деятельности службы ИБ. Среди прочих есть у R-Vision и модуль "Риски" (Risk Manager), в рамках которого среди прочего есть и подсистема моделирования угроз для всех идентифицированных активов организации. Идентифицируются виды, источники и способы реализации угроз.


Но в чистом виде инструментом для моделирования угроз решение от R-Vision назвать нельзя - данная задача там одна из многих. Собственно как и во многих иных инструментах по моделированию рисков - CRAMM, PTA и т.п.

В качестве заключению хочу вновь повторить, что у каждого из описанного выше инструментов своя область применения и своя задача. Взять их и применить для моделирования угроз по методике ФСТЭК не получится. Однако облегчить жизнь разработчикам, консультантам или архитекторам они могут. А может быть они наведут на мысли о том, каким могло бы быть отечественное решение по моделированию угроз, о котором я писал в прошлой заметке, и которое бы получило "одобрямс" от регулятора.

7 коммент.:

Target комментирует...

Интересно, но... Во всех продуктах отсутствует формализованный метод с доказательством безопасности информационной архитектуры. Все делается на экспертной оценке. Поэтому:
1. Мало где используется на практике (надо постоянно актуализировать базу угроз/уязвимостей и не понятно как их искать).
2. Для критичных ИС не применимо, потому что нет формального доказательства безопасности информационной архитектуры (ее соответствия декларируемой политике ИБ).
Решение проблемы возможно (но сложно). Примерный состав задач:
1. Определение типовых информационных объектов в системе и внешней среде, а также информационных примитивов, которыми можно описать все процедуры связанные с доступом между этими объектами и внешней средой на физическом и логическом уровнях обработки данных (без учета семантики прикладных задач).
2. Разработки формального метода построения динамической модели, которая позволяла бы описывать все траектории информационного процесса для конкретной информационной архитектуры.
3. Автоматизированный поиск всех траекторий (конечно с редукцией графа состояний системы) информационного процесса и определение мест архитектуры, в которых система переходит в состояние, нарушающее декларируемую политику ИБ (повышение уровня редукции графа состояний системы может снижать достоверность динамической модели).
Найденные места будут потенциальными уязвимостями архитектуры, которые, по сути, являются возможными каналами НСД к информации (почему-то их называют угрозами, но это терминологические предпочтения).

Алексей Лукацкий комментирует...

То, что ты описываешь реализовано в RedSeal или Skybox, но стоимость этих решений просто адская

Алексей Лукацкий комментирует...

А "формализованный метод с доказательством безопасности информационной архитектуры" - это вообще не задача средства для моделирования угроз. У него сугубо утилитарная задача - облегчить процесс формирования списка актуальных угроз.

Александр Бодрик комментирует...

RedSeal или Skybox не так уж и дороги, такого класса решения в России позволили себе не один десяток контор

Алексей Лукацкий комментирует...

Из 5 миллионов?

Aleksey Timof комментирует...
Этот комментарий был удален автором.
Aleksey Timof комментирует...

Алексей Викторович,
Проанализировав требования к системе моделирования угроз, которые Вы изложили в статье «Средства моделирования угроз: обзор возможностей» мы увидели, что тот инструмент, который мы используем, полностью их покрывает. С анализом возможностей нашего инструмента и готового решения на его базе Вы можете познакомиться здесь: http://cradle.saturs.ru/cradle-products/saturs-ism/. Готовы ответить на Ваши вопросы тут: https://www.facebook.com/groups/sysdes/