Отчёт об уязвимостях — страница проекта, на которой собраны несоответствия сканеров безопасности из пайплайнов проекта: SAST, обнаружение секретов, сканирование зависимостей, сканирование контейнеров и DAST. На этой странице можно отфильтровать несоответствия пайплайна, открыть подробности несоответствия и проследить, как меняется число несоответствий со временем.
Доступность
Пункт «Отчёт об уязвимостях» появляется в боковом меню проекта, если выполнены все условия:
- В настройках проекта включены функции «Безопасность и соблюдение норм» и «CI/CD».
- У вас есть роль «Разработчик», «Менеджер безопасности», «Мейнтейнер» или «Владелец» в проекте.
Изменять настройки отчёта могут только пользователи с ролью «Мейнтейнер» или «Владелец».
Открытие отчёта об уязвимостях
Чтобы открыть отчёт об уязвимостях:
- Откройте проект.
- В боковом меню слева выберите «Безопасность» → «Отчёт об уязвимостях».
На странице показан последний пайплайн, сформировавший отчёт безопасности. Несоответствия пайплайна появляются сразу после завершения его задач сканирования, поэтому у выполняющегося пайплайна результаты могут быть неполными.

Таблица несоответствий
В таблице несоответствий перечислены несоответствия выбранного пайплайна. В столбце «Описание» показаны название несоответствия и его местоположение, например путь к файлу, затронутые пакеты или идентификатор CVE. У несоответствия могут быть значки:
- ×N — о несоответствии сообщили N раз в этом пайплайне, например несколько сканеров;
- N — то же несоответствие встречается ещё в N других пайплайнах проекта.
На панели «Источники» перечислены типы отчётов пайплайна и число несоответствий каждого типа. Если сканеры сообщили об одном и том же несоответствии несколько раз, на плитке уровня критичности или у типа отчёта показаны два числа, например 12 / 15: число несоответствий и число записей сканеров до объединения дубликатов.
Чтобы отфильтровать таблицу несоответствий:
- Выберите плитку уровня критичности над таблицей или тип отчёта на панели «Источники» либо в строке таблицы. Чтобы снять фильтр, выберите его повторно.
- Введите текст в поле «Поиск по описанию / CVE / пути…». Поиск идёт по названию, местоположению, затронутым пакетам, CVE или идентификатору, типу отчёта и инструменту несоответствия.
Чтобы снять все фильтры и очистить поле поиска, нажмите «× Сбросить фильтры».
Выбор пайплайна
График «Тренд находок по критичности» показывает число несоответствий по дням с разбивкой по уровням критичности. Каждый день на графике соответствует последнему пайплайну этого дня в ветке по умолчанию, а если в ней пайплайнов не было — последнему пайплайну дня. Чтобы изменить период графика, выберите «30 дней», «60 дней» или «90 дней» (по умолчанию) либо месяц в списке «Все месяцы». Пунктирные вертикальные линии на графике отмечают релизы или этапы проекта — в зависимости от настроек отчёта.
На панели «Пайплайны» перечислены пайплайны выбранного дня, сформировавшие отчёт безопасности, от новых к старым. В каждой строке указаны номер пайплайна, время, ветка или тег и число несоответствий каждого уровня критичности. Чтобы посмотреть несоответствия другого пайплайна, выберите его строку.
Чтобы выбрать день или период:
- Выбор дня: щёлкните день на графике. Отчёт покажет последний пайплайн этого дня в ветке по умолчанию.
- Выбор периода: выделите период на графике, удерживая кнопку мыши. На панели «Пайплайны» появится по одной строке на каждый день периода.
- Сброс выбора: нажмите × рядом с заголовком «Пайплайны» или клавишу Escape.
Адрес страницы сохраняет выбранный день или период, поэтому им можно поделиться ссылкой.

Подробности несоответствия
Чтобы открыть подробности несоответствия, выберите его строку в таблице несоответствий. В окне подробностей показаны данные, которые отчёт безопасности содержит о несоответствии, например файл или местоположение, затронутые пакеты, идентификаторы, ссылки, описание и способ устранения. Идентификатор CVE, для которого в отчёте нет ссылки, ведёт на запись в NVD (National Vulnerability Database).
В окне подробностей можно выполнить следующие действия:
- Чтобы скопировать путь к файлу, нажмите «Копировать» рядом с ним. Чтобы открыть файл, нажмите «Просмотреть файл».
- Чтобы показать больше кода вокруг несоответствия, нажмите «Развернуть строки выше» или «Развернуть строки ниже». Код показывается, если его показ включён в настройках отчёта.
- Чтобы поделиться несоответствием, нажмите «Постоянная ссылка» или «Скопировать ссылку». Если на графике не выбран день, ссылка открывает последний пайплайн, а он меняется после завершения новых пайплайнов.

Настройки отчёта об уязвимостях
Чтобы изменить настройки отчёта:
- Откройте отчёт об уязвимостях.
- В правом верхнем углу отчёта нажмите «Настройки». Откроется страница «Настройки отчёта об уязвимостях».
- Измените настройки и нажмите «Сохранить изменения».
Чтобы вернуться к отчёту, нажмите «Назад к отчёту об уязвимостях».
Доступны следующие настройки:
| Настройка | Описание | По умолчанию |
|---|---|---|
| «Собирать находки из завершённых пайплайнов» | Сбор несоответствий из новых пайплайнов. Если сбор выключен, отчёт сохраняет уже собранные несоответствия | Включено |
| «Уровни, которые не собирать» | Уровни критичности, несоответствия которых не собираются из новых пайплайнов. Уже собранные несоответствия остаются в отчёте | Не выбраны |
| «Ветки» | Ветки, пайплайны которых показывает отчёт: «Все ветки», «Ветка по умолчанию» или «Ветки по шаблону». Настройка действует и на уже собранные пайплайны | «Все ветки» |
| «Фильтр веток (регулярное выражение)» | Регулярное выражение RE2 для названий веток, используется с вариантом «Ветки по шаблону». Пустое выражение соответствует всем веткам. Некорректное выражение сохранить нельзя | Пусто |
| «Скрытые уровни критичности» | Уровни критичности, скрытые на графике, плитках и в легенде. Скрытые уровни также не учитываются в счётчиках на панели «Пайплайны». Несоответствия скрытого уровня остаются в таблице несоответствий с уровнем «Неизвестно». Если скрыт и уровень «Неизвестно», они получают самый высокий уровень, который не скрыт | Не выбраны |
| «Метки на графике» | Что отмечают пунктирные линии на графике: «Теги» — релизы проекта по дате релиза, «Этапы» — этапы по дате завершения или, если её нет, по дате начала | «Теги» |
| «Фильтр меток (regex)» | Регулярное выражение RE2 для названий релизов или этапов. При пустом выражении показываются все метки. Некорректное выражение сохранить нельзя | Пусто |
| «Показывать фрагмент кода в окне находки» | Показ кода несоответствия в окне подробностей | Включено |
| «Строки контекста» | Число строк кода выше и ниже несоответствия, от 1 до 20 | 5 |
