Как читать отчёт сканера уязвимостей и что исправлять первым

0
13
Обложка статьи: Как читать отчёт сканера уязвимостей и что исправлять первым

Сканер выдаёт сотни строк, и воспринимать их все как срочные нельзя. Задача при разборе отчёта: отсеять ложные срабатывания, выбрать десяток уязвимостей, которыми реально могут воспользоваться, и дать администраторам понятные задачи. Как найти открытые порты и версии сервисов, см. Nmap: сканирование сети. Здесь разбор того, что делать с готовым отчётом.

Шаг 1. Проверьте, как проходило сканирование

  • С учётной записью или без. Сканирование «снаружи» видит только сетевые сервисы и угадывает версии по баннерам. С учётной записью сканер читает список установленных пакетов, и данные точнее.
  • Охват. Все ли узлы были доступны. Узлы, закрытые от сканера firewall, в отчёте просто отсутствуют.
  • Дата и версия базы. Отчёт месячной давности не знает о новых уязвимостях.

Шаг 2. Отсейте ложные срабатывания

Самая частая причина: сканер видит версию OpenSSH 8.9p1 и считает уязвимость актуальной, а дистрибутив уже перенёс исправление в свой пакет (backport), не меняя номер версии. Проверьте по журналу изменений пакета:

# Debian/Ubuntu
apt changelog openssh-server | grep -i CVE-2024-XXXXX
# RHEL-совместимые
rpm -q --changelog openssh-server | grep CVE-2024-XXXXX

Если CVE упомянута в журнале изменений установленной версии, исправление уже есть. Отметьте как ложное срабатывание и запишите, откуда это известно.

Шаг 3. Расставьте приоритеты

Оценка CVSS показывает тяжесть уязвимости в целом, но не вероятность, что её используют именно у вас. Добавьте три вопроса:

Вопрос Где посмотреть
Уязвимость уже используется в атаках? Каталог KEV (CISA)
Насколько вероятна эксплуатация? EPSS (FIRST): вероятность в ближайшие 30 дней
Доступна ли она из недоверенной сети? Ваша схема сети и вывод Nmap по состояниям портов

Порядок: сначала уязвимости из KEV на сервисах, доступных из интернета; затем с высоким EPSS на внешнем периметре; затем критичные во внутренней сети. Остальные закрываются по плану обновлений.

Шаг 4. Превратите находки в задачи

Группируйте по действию, а не по CVE. Одно обновление пакета закрывает десятки строк отчёта:

apt list --upgradable 2>/dev/null | grep -i openssl
dnf updateinfo list security

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

Как проверить

Пересканируйте те же узлы той же настройкой сканера после исправлений. Исчезновение находки из отчёта и есть подтверждение. Если уязвимость осталась, проверьте, что сервис перезапущен после обновления библиотеки: needrestart на Debian/Ubuntu или dnf needs-restarting на RHEL. Полный цикл процесса: управление уязвимостями.

Оставьте свой ответ