Блог Слёрм

CVSS не для галочки: как понять, что действительно важно чинить

Разбираемся, как оценивать уязвимости по-настоящему: что чинить в первую очередь, а что можно отложить. Рассмотрим практические примеры, ошибки и работающие методы приоритизации, а также узнаем, почему одной оценки недостаточно. Автор статьи — Кирилл Казарин, спикер курса «Администрирование Linux» и автор телеграм-канала Kazarin.online.

Уязвимости

Уязвимость в ПО — это слабое место, через которое злоумышленник может вмешаться в работу системы. Типичный сценарий — использовать известную CVE, чтобы:

  • получить доступ к данным;
  • выполнить произвольный код;
  • положить сервис;
  • развернуть шифровальщик;
  • или просто затаиться и ждать?

Сотни атак за последние годы начинались с одной строки в скан-отчёте.

Примеры из жизни:

  • Log4Shell (2021): RCE в log4j, широко используемой Java-библиотеке логирования. Месяцы "охоты", критичнейшие инциденты, долгий откат.
  • MOVEit (2023): уязвимость в ПО для обмена файлами, через которую утекли данные у множества компаний.
  • Fortinet SSL VPN (несколько CVE): стабильный источник RCE, активно эксплуатируется APT-группами.

Что такое CVE и CVSS

  • CVE - это «паспорт» уязвимости: уникальный номер и базовое описание.

  • CVSS - система оценки риска: шкала от 0 до 10, где учитываются условия эксплуатации и последствия.

CVSS сейчас существует в 4 версиях (1.0 → 4.0), но самые распространённые — v3.0 и v3.1.

В 2023 вышла v4.0, но её пока поддерживают не все.

CVSS делится на три уровня:

1. Base Score (что может сделать злоумышленник и насколько это страшно — без привязки к вашему окружению)

2. Temporal Score (актуальность и наличие эксплойта)

3. Environmental Score (насколько это критично **в вашей системе**)

Сканеры уязвимостей (Trivy, Tenable, Qualys и др.) показывают Base Score, и только его

Что такое вектор CVSS

Каждая оценка CVSS включает вектор — набор параметров, описывающих атаку:

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

В нём содержатся такие параметры:

  • AV (Attack Vector): удалённо или локально выполняется атака
  • AC (Attack Complexity): насколько сложна эксплуатация
  • PR (Privileges Required): нужны ли учётки привелегированного пользователя чтобы сработало
  • UI (User Interaction): нужено ли взаимодействие с пользователем
  • S (Scope): затрагивает ли другие компоненты
  • C/I/A: влияние на конфиденциальность, целостность, доступность

Это как модель угроз, но к сожалению не конкретно ваша, а «сферическая в вакууме», чтобы можно было сравнивать уязвимости между собой.

Почему одной оценки недостаточно

Уязвимость с CVSS 9.8 может оказаться вообще неэксплуатируема в вашей системе, а CVSS 5.5 при этом представлять критическую угрозу с точки зрения вашего бизнеса.

Пример:

  • CVE: удалённый RCE на сервере X
  • - Base Score: 9.8

Но в вашем случае:

  • сервер стоит в закрытом сегменте и доступ к нему тольк ос помощью VPN,
  • он не доступен из сети интернет и сам не может иметь к нему доступа
  • включена мандатная система контроля доступа типа SELinux или AppArmor,
  • сервис на нем работает. от лица не привелированной учетной записи

Оценка по CVSS падает до 5.4 или даже 3.9 — из "Critical" превращается в "Low/Medium".

Это и есть Environmental Score — результат переоценки в контексте вашей инфраструктуры.

Что такое управление уязвимостями

Vulnerability Management — это не процесс который представляет из себя нечто чуть сложнее чем "рах в неделю посмотреть в репорт сканера". например он включает следующие регулярные шаги?

1. Получить данные (сканеры, баги, тикеты)

2. Оценить реальный риск (а не только по CVSS base)

3. Принять решение (фикс, mitigation, отложить)

4. Задокументировать и отследить

На больших компаниях этим занимаются отдельные команды. Но даже в стартапе на 5 человек можно и нужно:

  • поставить сканер (например, опенсорсный Trivy),
  • получить и выгрузить CVE,
  • добавить их в Google Sheet,
  • приоритизировать руками понять что делать

Зачем это всё?

📉 Меньше фальшивых пожаров

⏳ Больше времени на реальные угрозы

🧩 Прозрачный процесс принятия решений

✅ Уважение аудиторов и инвесторов

💼 Повышение зрелости процессов безопасности

И, да, в маленьких командах это всё можно сделать быстрее и проще, чем в энтерпрайзе. У вас меньше легаси и проще выработать практики сразу.
Полезное