Журнал учета уязвимостей
Журнал (Vulnerability Disclosure Register) — единый публичный реестр всех подтвержденных уязвимостей проекта Netgap. Запись создается при подтверждении отчета и обновляется по мере продвижения по процессу CVD; поля, раскрывающие детали эксплуатации, в журнал не попадают.
Правила подачи отчета описаны в Политике раскрытия уязвимостей (VDP).
1. Реестр записей
2. Статусы записей
| Статус | Значение |
|---|---|
| Получено | отчет расшифрован и принят, обработка начата |
| Проверка | идет проверка воспроизводимости и оценка критичности |
| Подтверждено | уязвимость подтверждена, идентификатор NG-SA присвоен, план исправления согласуется |
| Исправляется | исправление разрабатывается или проходит проверку |
| Исправлено | исправление выпущено в указанной версии |
| Раскрыто | бюллетень опубликован, детали раскрыты по согласованию |
| Отклонено | находка не подтверждена или не относится к области действия политики |
| Дубликат | совпадает с ранее зарегистрированной записью |
Первые четыре статуса считаются незакрытыми: такие записи отображаются в фильтре «В работе» и выводятся в начале таблицы.
3. Как ведется журнал
Источник данных журнала — файл src/data/security-advisories.json в репозитории сайта. Запись добавляет и обновляет PSIRT проекта; при каждом изменении обновляется поле updated в том же файле.
Структура записи:
{
"id": "NG-SA-2026-0001",
"bdu": "BDU:2026-12345",
"cve": "CVE-2026-12345",
"title": "Краткое название без деталей эксплуатации",
"scope": "product",
"component": "netgap-gateway",
"affectedVersions": ">= 1.0.0-rc, < 1.0.1",
"platforms": ["x86_64-unknown-linux-musl"],
"fixedIn": "1.0.1",
"severity": "high",
"cvssScore": 8.1,
"cvssVector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N",
"cwe": "CWE-284",
"status": "disclosed",
"reportedAt": "2026-02-01",
"fixedAt": "2026-02-20",
"disclosedAt": "2026-03-01",
"reporter": "Имя или ник исследователя, либо null",
"reference": "https://dev.netgap.io/netgap/netgap/-/releases/1.0.1"
}
Допустимые значения: scope — product, site, infrastructure; severity — none, low, medium, high, critical; status — received, triage, confirmed, fixing, fixed, disclosed, rejected, duplicate. Поля bdu, cve, fixedIn, cvssScore, cvssVector, cwe, fixedAt, disclosedAt, reporter, reference могут быть null, если значение пока неизвестно. Необязательное поле platforms можно не указывать: тогда считается, что затронуты все сборки релиза. Даты указываются в формате ISO 8601 (YYYY-MM-DD).
Поле bdu содержит идентификатор Банка данных угроз ФСТЭК России вида BDU:2026-12345: уведомление БДУ об уязвимости в приложении Netgap направляется всегда, а CVE запрашивается только по запросу исследователя (см. раздел 10 VDP).
4. Уязвимости на странице релиза
На странице «Детали релиза» в разделе «Уязвимости» показываются только те записи журнала, которые относятся к выбранной там версии и целевой платформе. Отбор выполняется так:
- учитываются только записи с
scope: product— находки в сайте документации и инфраструктуре разработки к поставляемой сборке отношения не имеют; - версия релиза сверяется с
affectedVersions. Допускаются операторы>=,>,<=,<,=,!=, объединение условий через запятую и перечисление альтернатив через||(например,>= 1.0.0-rc, < 1.0.1 || >= 1.1.0, < 1.1.2). Сравнение идет по правилам semver, то есть1.0.0-rc.4младше1.0.0; - если диапазон записан в свободной форме и разобрать его не удалось, запись все равно показывается — с пометкой о том, что принадлежность сборки нужно проверить вручную;
- необязательное поле
platformsограничивает запись отдельными сборками. Указывается либо полная тройка (x86_64-unknown-linux-musl), либо ее часть (linux,musl,aarch64). Если поле отсутствует или список пуст, затронуты все сборки релиза.