Управление техническими уязвимостями (Vulnerability Management, VM) - это процесс информационной безопасности, цель которого снижать риски, которые могут наступить в результате эксплуатации технических уязвимостей в программном обеспечении.

Управление уязвимостями — это «циклическая практика выявления, классификации, приоритезации, исправления и снижения» уязвимостей программного обеспечения. Управление уязвимостями является неотъемлемой частью компьютерной и сетевой безопасности, и его не следует путать с оценкой уязвимостей.
Для поиска технических уязвимостей в инфраструктуре используются сканеры безопасности (сканеры уязвимостей), но простого сканирования инфраструктуры для построения процесса VM недостаточно. Процесс VM состоит из следующих этапов:
Сканирование активов -> Анализ выявленных уязвимостей -> Устранение уязвимостей -> Контроль устранения.

Ключевые проблемы процесса управления техническими уязвимостями:
  1. Нет приоритета
     Как оценить уязвимости основываясь на целях бизнеса и критичности активов?
  2. Много мусора
    Сотни страниц отчетов от сканеров безопасности.
  3. Нет контроля исполнения
    Задачи на устранение уязвимостей ставятся и не исполняются, ведь системы постановки задач в компании не связаны с результатами работы сканеров безопасности.

Возможности

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

Управление техническими уязвимостями в SECURITM обеспечивает:
  1. Интеграцию с несколькими сканерами безопасности одновременно;
  2. Оценку интегральной критичности уязвимостей с учетом множества параметров;
  3. Возможность принятия рисков (настройки исключений) для уязвимостей;
  4. Автоматическое формирование задач, с напоминаниями и контролем исполнения, привязкой к конкретным уязвимостям, группам уязвимостей, активам;
  5. Интеграцию с Jira и иными Service Desk системами для заведения заявок на устранение уязвимостей в ИТ отдел; 
  6. Механизмы обсуждения проблем и ведения базы знаний;
  7. Формирование метрик эффективности по процессу;
  8. Контрольный след по всем операциям.

Сканеры

Сервис может принимать результаты работы от любых сканеров безопасности. 
На текущий момент добавлены интеграции со сканерами:
  • Nessus
  • Qualys
  • RedCheck
  • Nmap (с плагином vulners.nse)
  • OpenVAS
  • Kaspersky
Добавление новых интеграций с отчетами сканеров безопасности производится по запросу

Алгоритм работы

Процесс управления техническими уязвимостями в Сервисе строится следующим образом:
  1. Загрузка в Сервис отчетов от сканера (сканеров) безопасности
    Прим.: Если нет сканера безопасности можно воспользоваться бесплатным Nmap с скриптом vulners.nse или OpenVAS
    Сделать это можно:
    1. В разделе Технические уязвимости (левое меню), нажав на кнопку Настройки и выбрав подходящий сканер
    2. В разделе Профиль команды во вкладке Технические уязвимости
  2. Перед загрузкой данных можно выбрать режим импорта - с созданием новых активов в Реестре активов или без.
    Активы будут создаваться только если из отчета сканера безопасности были получены IP, Hostname и Операционная система актива.
    Работать с модулем технических уязвимостей можно и без создания активов. Уязвимые хосты это отдельные сущности, которые могут быть связаны с активами или нет.
  3. Сервис автоматически установит связи с активами из Реестра активов - по IP адресу.
    Максимальный приоритет связанных активов будет присвоен уязвимости и учитываться при расчете интегральной уязвимости.
    Например, если хост на котором обнаружена уязвимость входит в состав критичной системы или входит в состав системы которая входит в критичный бизнес-процесс то его приоритет будет считаться критичным.
  4. В отношении Уязвимости, связки Уязвимость-Хост или Хоста (всех уязвимостей на хосте) можно выполнить следующие операции:
    1. Принять риск
      Принятые уязвимости будут скрыты из общего дашборда и не будут участвовать в оценке интегральной уязвимости.
      Принять уязвимости можно на время, указав срок после которого они будут восстановлены.
    2. Закрыть уязвимость
      Закрытие является ручным подтверждением того, что уязвимость была устранена.
      Закрывать уязвимости необязательно. При загрузке результатов следующего сканирования, если уязвимость исчезнет - она будет закрыта автоматически.
    3. Создать задачу на устранение уязвимости
      В зависимости от имеющихся данных (связи с активами) Сервис автоматически сформирует
      1. Название задачи
      2. Описание задачи
      3. Срок (SLA) на устранение уязвимости
        SLA можно изменять, в Настройках модуля VM
      4. Ответственного за задачу
        Если уязвимость связана с активом то ответственным за ее устранение будет выбран администратор актива 
  5. Контроль выполнения задач на устранение уязвимостей осуществляется в модуле управления задачами
  6. Повторное сканирование инфраструктуры и загрузка результатов в Сервис
    1. Исчезнувшие из результатов сканирования уязвимости будут закрыты
    2. Закрытые ранее, но но найденные в результатах сканирования уязвимости будут повторно открыты 

Интегральная уязвимость

Сканеры безопасности сообщают базовую оценку уязвимости - CVSS, CVSS 3, Severity, без учета контекста.
SECURITM рассчитывает интегральную величину (критичность) уязвимости с учетом дополнительной информации:
  • Наличие публичных экспойтов
  • Приоритет актива, на котором найдена уязвимость
  • Наличие доступа к уязвимому активу из сети Интернет
  • Приоритет связанных активов - систем, процессов
  • Количество уязвимостей определенного типа в инфраструктуре
Интегральная величина уязвимости рассчитывается отдельно в отношении уязвимостей и в отношении хостов.
Формулу, по которой будет рассчитываться интегральная величина, можно выбрать в Настройках модуля VM.
Сейчас доступны следующие варианты расчета интегральной величины уязвимости:
  1. Базовая формула SECURITM
    Учитывается критичность уязвимости определенная сканером безопасности, количество уязвимых хостов, их максимальный приоритет, наличие доступа из интернета.
    [Vuln severity] x |COUNT(IP)| x |0,5 * MAX(Asset priority)| * |1.5*COUNT(Public Assets)|
  2. Методика ФСТЭК
    Формула установлена Методикой оценки уровня критичности уязвимостей программных, программно-аппаратных средств (утв. ФСТЭК России 28.10.2022) 
    Учитываются значения CVSS, связь с критичными системами, тип уязвимых активов, количество уязвимых хостов по отношению к общему кол-ву хостов в инфраструктуре, наличие доступа к хосту из интернета.
Добавление новых формул для расчета интегральной уязвимости производится по запросу