Открыть сервис

Национальная база данных уязвимостей

Национальная база данных уязвимостей (National Vulnerability Database, NVD) — это государственный репозиторий США, содержащий стандартизированную информацию об уязвимостях программного обеспечения и аппаратного обеспечения. База данных поддерживается Национальным институтом стандартов и технологий (NIST) при финансовой поддержке Управления кибербезопасности и защиты инфраструктуры Министерства внутренней безопасности США. NVD служит центральным источником данных для оценки рисков, управления уязвимостями и автоматизации процессов обеспечения информационной безопасности.

История

Проект NVD был запущен в 2005 году как развитие более ранней инициативы NIST — Internet Content Adaptation Protocol (ICAP) и базы данных ICAT. Основной целью стало создание единой, общедоступной и машиночитаемой базы уязвимостей, которая могла бы заменить разрозненные списки, публикуемые различными организациями. Первоначально NVD базировалась на данных из списка Common Vulnerabilities and Exposures (CVE), который ведёт корпорация MITRE. С течением времени NVD расширила функционал, добавив метрики оценки серьёзности уязвимостей (CVSS), классификацию по типам (CWE) и возможность интеграции с другими системами через API.

В 2010-х годах NVD стала ключевым элементом инфраструктуры кибербезопасности США, а её данные начали активно использоваться в коммерческих продуктах (например, в сканерах уязвимостей, SIEM-системах). В 2023 году NVD содержала более 200 тысяч записей, а ежегодно добавлялось около 20 тысяч новых уязвимостей. В 2024 году NIST объявил о переходе к новой версии API и планах по автоматизации обработки данных с использованием машинного обучения.

Структура и содержание

Каждая запись в NVD (так называемый «CVE-идентификатор») включает следующие основные элементы:

  • Идентификатор CVE — уникальный номер в формате CVE-YYYY-NNNNN, присвоенный корпорацией MITRE.
  • Описание уязвимости — краткое текстовое описание на английском языке, содержащее сведения о затронутом продукте, версии, типе уязвимости и потенциальном воздействии.
  • CVSS-оценка — числовая метрика от 0,0 до 10,0, отражающая серьёзность уязвимости. Включает базовую, временную и экологическую оценки. Версия CVSS (например, v3.1) указывается отдельно.
  • Классификация CWE — отнесение уязвимости к одному или нескольким типам из списка Common Weakness Enumeration (например, CWE-79: межсайтовый скриптинг, CWE-89: SQL-инъекция).
  • Список уязвимых конфигураций — перечень программных продуктов, платформ и версий, подверженных уязвимости, с указанием поставщика и номера версии.
  • Ссылки на внешние источники — патчи, бюллетени безопасности, статьи, отчёты, а также данные из других баз (например, Exploit-DB, Metasploit).
  • Дата публикации и последнего обновления — временные метки в формате UTC.

Пример записи

Для уязвимости CVE-2024-12345 (гипотетический пример) запись может содержать: описание «Уязвимость удалённого выполнения кода в веб-сервере Apache HTTP Server 2.4.51», CVSS 9.8 (критическая), CWE-94 (неконтролируемое выполнение кода), список уязвимых версий Apache 2.4.0–2.4.51, ссылки на патч от Apache Software Foundation и уведомление CERT/CC.

Метрики оценки серьёзности

Основным инструментом оценки в NVD является Common Vulnerability Scoring System (CVSS) — открытый стандарт, разработанный компанией FIRST. CVSS v3.1 использует три группы метрик:

  • Базовые метрики — неизменяемые характеристики уязвимости: вектор атаки (сеть, смежная сеть, локальный, физический), сложность атаки, требуемые привилегии, взаимодействие с пользователем, объём воздействия (конфиденциальность, целостность, доступность).
  • Временные метрики — изменяющиеся со временем: наличие эксплойта, уровень исправления, достоверность отчёта.
  • Экологические метрики — зависящие от конкретной среды: требования к безопасности, конфиденциальность, целостность, доступность в конкретной организации.

Итоговая оценка CVSS делится на категории:

  • 0.0 — отсутствие уязвимости (информационная запись);
  • 0.1–3.9 — низкая;
  • 4.0–6.9 — средняя;
  • 7.0–8.9 — высокая;
  • 9.0–10.0 — критическая.

Классификация уязвимостей

NVD использует Common Weakness Enumeration (CWE) — таксономию типов программных ошибок, приводящих к уязвимостям. Наиболее распространённые категории в NVD:

  • CWE-79 — межсайтовый скриптинг (XSS);
  • CWE-89 — SQL-инъекция;
  • CWE-20 — некорректная проверка входных данных;
  • CWE-200 — раскрытие конфиденциальной информации;
  • CWE-119 — выход за границы буфера;
  • CWE-352 — подделка межсайтовых запросов (CSRF).

Каждой записи может быть присвоено несколько CWE-идентификаторов, если уязвимость имеет комбинированный характер.

Применение

NVD используется в следующих целях:

  • Управление уязвимостями — организации автоматически сопоставляют инвентаризацию своего ПО с записями NVD для выявления непропатченных систем.
  • Оценка рисков — CVSS-оценки позволяют расставить приоритеты при исправлении уязвимостей.
  • Разработка политик безопасности — данные NVD учитываются при составлении требований к закупкам ПО и аудитах.
  • Научные исследования — база данных служит источником для анализа тенденций в области кибербезопасности, разработки моделей прогнозирования атак.
  • Коммерческие продукты — многие сканеры уязвимостей (Nessus, Qualys, OpenVAS) и системы управления уязвимостями (Rapid7, Tenable) используют NVD в качестве одного из источников данных.

Критика и ограничения

Несмотря на широкое распространение, NVD имеет ряд недостатков:

  • Задержки в обновлении — между публикацией CVE-идентификатора и появлением полной записи в NVD может проходить от нескольких дней до нескольких недель. В 2023 году средняя задержка составляла около 7 дней.
  • Неполнота данных — для некоторых уязвимостей отсутствуют CVSS-оценки или CWE-классификация, особенно если уязвимость была обнаружена в малоизвестном продукте.
  • Зависимость от CVE — NVD не присваивает собственные идентификаторы, а лишь обрабатывает данные от MITRE, что может приводить к дублированию или пропускам.
  • Ориентация на английский язык — описания и метаданные доступны только на английском, что затрудняет использование в неанглоязычных странах.
  • Отсутствие контекста эксплуатации — NVD не предоставляет информацию о том, была ли уязвимость реально использована в атаках, что может вводить в заблуждение при оценке рисков.

Альтернативы

Существуют другие базы данных уязвимостей, частично или полностью заменяющие NVD:

  • Open Vulnerability and Assessment Language (OVAL) — стандарт для описания конфигураций и проверок, поддерживаемый MITRE.
  • Exploit-DB — база данных эксплойтов, поддерживаемая Offensive Security.
  • Vulnerability Database (VulDB) — коммерческая база, содержащая более детализированные данные, включая информацию об эксплойтах и ценах на уязвимости.
  • CVE Detailsагрегатор данных из NVD и других источников.
  • Национальные базы данных — например, российская база уязвимостей ФСТЭК России (БДУ) или китайская CNNVD.

Интересные факты

  • По состоянию на 2024 год, самый высокий CVSS-балл (10.0) имеют несколько уязвимостей, например, CVE-2014-0160 (Heartbleed) и CVE-2021-44228 (Log4Shell).
  • NVD поддерживает экспорт данных в форматах XML, JSON, CSV, а также предоставляет REST API для автоматизированного доступа.
  • В 2023 году NVD обработала рекордное количество записей — более 25 000, что связано с ростом числа уязвимостей в программном обеспечении с открытым исходным кодом.

Источники

  • National Institute of Standards and Technology (NIST) — официальный сайт NVD (nvd.nist.gov).
  • Common Vulnerabilities and Exposures (CVE) — список уязвимостей, поддерживаемый MITRE.
  • Common Vulnerability Scoring System (CVSS) — спецификация версии 3.1, опубликованная FIRST.
  • Common Weakness Enumeration (CWE) — таксономия программных ошибок, поддерживаемая MITRE.
  • Отчёты и аналитические материалы по кибербезопасности (например, Verizon Data Breach Investigations Report, 2023).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →