Читая проект руководства по Vulnerability Management от ФСТЭК. Процесс не для человеков. Если брать совсем упрощенно, то в руководстве описан процесс, где на входе мы имеем общий поток уязвимостей (не только от сканеров, а вообще всех известных BDU/CVE уязвимостей!), который мы пропускаем по хитрому многоступенчатому процессу, несколько напоминающему Gartner Vulnerability Management Сycle. В рамках этого процесса мы делаем вывод о релевантности уязвимости и если уязвимость релевантна, устраняем её срочно, устраняем планово или применяем компенсирующие меры.
Главное, что вызывает озабоченность это кажущаяся окончательность принятия решения по уязвимости. Приняли решение, что уязвимость нерелевантная и забыли о ней. Приняли решение, что она не особо критичная и может быть устранена планово, закинули в неприоритетную задачку на IT и забыли об этой уязвимости (как минимум на время фикса).
Проблема в том, что входные данные об уязвимостях и об инфраструктуре будут постоянно меняться. Поэтому нерелевантная уязвимость может внезапно стать релевантной (и наоборот), а несрочная срочной (и наоборот).
Рассмотрим примеры:
1. Мы на этапе мониторинга уязвимостей и оценки их применимости пришли к выводу, что уязвимость нерелевантная. На следующей день изменились входные данные по уязвимости (уточнили тип, был EoP, стал RCE) или составу инфраструктуры (думали нет таких софтов у нас, а они появились) и она уже становится релевантной. А мы её уже убрали из рассмотрения и пропустили поэтому супер-критичную уязвимость.
2. Возьмем "этап оценки уязвимостей". Там есть "Определение уровня опасности уязвимости" - Расчет базовой, контекстной и временной метрик CVSS. Как минимум временная метрика требует постоянной актуализации. Там есть Exploit Code Maturity (E). Сегодня эксплоита для уязвимости нет, а завтра он появится.
Иными словами, не получится один раз прогнать уязвимость по процессу, принять какое-то окончательное решение по ней и больше к рассмотрению этой уязвимости не возвращаться. Требуется постоянно обновлять информацию о состоянии инфраструктуры и уязвимостей (в т.ч. улучшать качество детекта - если что-то не детектируется из того, что должно - нужно настучать VM-вендору). А затем необходимо корректировать статусы уязвимостей:
- ранее нерелевантные уязвимости пускать в исправление (и наоборот)
- плановое исправление заменять на срочное (и наоборот)
- планировали патчить, а теперь решили компенсировать (и наоборот).
Естественно для десятков тысяч уязвимостей и достаточно большой инфраструктуры это не получится сделать силами героев-аналитиков с эксельками. Здесь требуется серьезная автоматизация. Аналитик в такой автоматизированной системе не должен принимать решение по конкретной уязвимости, его задача корректировать общий управляющий алгоритм.
В рамках руководства весь этот момент можно снять одним уточнением в разделе "2. ПРОЦЕСС УПРАВЛЕНИЯ УЯЗВИМОСТЯМИ", что все уязвимости должны постоянно и непрерывно пропускаться по всему процессу и при изменении их статуса (релевантность, тип исправления) должны корректироваться фактические способы устранения уязвимостей. Причем не только уязвимости, которые детектируются в инфраструктуре сканерами, но и вообще все. Даже если уязвимости уже ранее устранялись. Безусловно, это сразу поменяет характер документа, по сути он превратится в ТЗ для разработки автоматизированной системы, но по-другому здесь вряд ли получится.