Моделирование угроз¶
Требования применяются к изменениям границ доверия и security-значимых
контрактов проекта. Уровни обязательности определены в корневом README.md.
SEC-THR-001. Условия обязательной модели угроз¶
Уровень: MUST
Применяется к: созданию или существенному изменению внешней границы, аутентификации, авторизации, обработки защищаемых данных, загрузки пользовательского содержимого, привилегированного компонента или security-критичной зависимости
До реализации проект должен определить, изменяются ли активы, доверенные субъекты, потоки данных, границы доверия или доступные атакующему операции. Положительный результат должен создать или обновить версионируемую модель угроз.
Отсутствие изменения должно быть подтверждено перечислением проверенных
признаков, а не только утверждением security review not required.
Обоснование¶
Security review без наблюдаемого trigger выполняется непоследовательно и пропускает новые границы атаки.
Проверка¶
- checklist triggers в merge request;
- сопоставление с diff API, permissions, данных и зависимостей;
- проверка времени обновления модели до существенной реализации.
Исключения¶
Исправление, уменьшающее реализацию без изменения перечисленных признаков, MAY не обновлять модель.
SEC-THR-002. Проверяемое содержание модели¶
Уровень: MUST
Применяется к: каждой модели угроз
Модель должна перечислять защищаемые активы, доверенных и недоверенных субъектов, точки входа, потоки данных, границы доверия, полномочия и предполагаемые возможности атакующего. Для каждой применимой угрозы должны быть указаны затронутый актив, предотвращающий или обнаруживающий контроль, способ проверки, остаточный риск и владелец.
Диаграмма MAY использоваться как представление потоков, но не заменяет перечень угроз и проверок.
Обоснование¶
Общий список опасений без связи с активом и контролем нельзя проверить или поддерживать при изменении архитектуры.
Проверка¶
- трассировка threat → control → test;
- review полноты entry points и trust boundaries;
- проверка владельца каждого принятого остаточного риска.
Исключения¶
Формат и метод классификации угроз выбирает проект при сохранении указанной семантики.
SEC-THR-003. Согласование и актуальность¶
Уровень: MUST
Применяется к: изменению, для которого модель угроз обязательна
Модель и принятые остаточные риски должен одобрить уполномоченный security- reviewer для того же diff. Изменение границы, data flow, permissions или security-control должно обновлять модель и связанные проверки в том же merge request.
Обоснование¶
Устаревшая модель описывает уже несуществующую поверхность атаки и создаёт ложное evidence review.
Проверка¶
- CODEOWNERS или эквивалентное правило approval;
- поиск связанных tests и controls в diff;
- периодическая сверка модели с deployed architecture.
Исключения¶
Экстренное исправление выполняется по OPS-INC-003 с последующим review.