Отчёт об уязвимостях — страница проекта, на которой собраны несоответствия сканеров безопасности из пайплайнов проекта: SAST, обнаружение секретов, сканирование зависимостей, сканирование контейнеров и DAST. На этой странице можно отфильтровать несоответствия пайплайна, открыть подробности несоответствия и проследить, как меняется число несоответствий со временем.

Доступность

Пункт «Отчёт об уязвимостях» появляется в боковом меню проекта, если выполнены все условия:

  • В настройках проекта включены функции «Безопасность и соблюдение норм» и «CI/CD».
  • У вас есть роль «Разработчик», «Менеджер безопасности», «Мейнтейнер» или «Владелец» в проекте.

Изменять настройки отчёта могут только пользователи с ролью «Мейнтейнер» или «Владелец».

Открытие отчёта об уязвимостях

Чтобы открыть отчёт об уязвимостях:

  1. Откройте проект.
  2. В боковом меню слева выберите «Безопасность» → «Отчёт об уязвимостях».

На странице показан последний пайплайн, сформировавший отчёт безопасности. Несоответствия пайплайна появляются сразу после завершения его задач сканирования, поэтому у выполняющегося пайплайна результаты могут быть неполными.

Отчёт об уязвимостях

Таблица несоответствий

В таблице несоответствий перечислены несоответствия выбранного пайплайна. В столбце «Описание» показаны название несоответствия и его местоположение, например путь к файлу, затронутые пакеты или идентификатор CVE. У несоответствия могут быть значки:

  • ×N — о несоответствии сообщили N раз в этом пайплайне, например несколько сканеров;
  • N — то же несоответствие встречается ещё в N других пайплайнах проекта.

На панели «Источники» перечислены типы отчётов пайплайна и число несоответствий каждого типа. Если сканеры сообщили об одном и том же несоответствии несколько раз, на плитке уровня критичности или у типа отчёта показаны два числа, например 12 / 15: число несоответствий и число записей сканеров до объединения дубликатов.

Чтобы отфильтровать таблицу несоответствий:

  • Выберите плитку уровня критичности над таблицей или тип отчёта на панели «Источники» либо в строке таблицы. Чтобы снять фильтр, выберите его повторно.
  • Введите текст в поле «Поиск по описанию / CVE / пути…». Поиск идёт по названию, местоположению, затронутым пакетам, CVE или идентификатору, типу отчёта и инструменту несоответствия.

Чтобы снять все фильтры и очистить поле поиска, нажмите «× Сбросить фильтры».

Выбор пайплайна

График «Тренд находок по критичности» показывает число несоответствий по дням с разбивкой по уровням критичности. Каждый день на графике соответствует последнему пайплайну этого дня в ветке по умолчанию, а если в ней пайплайнов не было — последнему пайплайну дня. Чтобы изменить период графика, выберите «30 дней», «60 дней» или «90 дней» (по умолчанию) либо месяц в списке «Все месяцы». Пунктирные вертикальные линии на графике отмечают релизы или этапы проекта — в зависимости от настроек отчёта.

На панели «Пайплайны» перечислены пайплайны выбранного дня, сформировавшие отчёт безопасности, от новых к старым. В каждой строке указаны номер пайплайна, время, ветка или тег и число несоответствий каждого уровня критичности. Чтобы посмотреть несоответствия другого пайплайна, выберите его строку.

Чтобы выбрать день или период:

  • Выбор дня: щёлкните день на графике. Отчёт покажет последний пайплайн этого дня в ветке по умолчанию.
  • Выбор периода: выделите период на графике, удерживая кнопку мыши. На панели «Пайплайны» появится по одной строке на каждый день периода.
  • Сброс выбора: нажмите × рядом с заголовком «Пайплайны» или клавишу Escape.

Адрес страницы сохраняет выбранный день или период, поэтому им можно поделиться ссылкой.

Выбор периода на графике тренда

Подробности несоответствия

Чтобы открыть подробности несоответствия, выберите его строку в таблице несоответствий. В окне подробностей показаны данные, которые отчёт безопасности содержит о несоответствии, например файл или местоположение, затронутые пакеты, идентификаторы, ссылки, описание и способ устранения. Идентификатор CVE, для которого в отчёте нет ссылки, ведёт на запись в NVD (National Vulnerability Database).

В окне подробностей можно выполнить следующие действия:

  • Чтобы скопировать путь к файлу, нажмите «Копировать» рядом с ним. Чтобы открыть файл, нажмите «Просмотреть файл».
  • Чтобы показать больше кода вокруг несоответствия, нажмите «Развернуть строки выше» или «Развернуть строки ниже». Код показывается, если его показ включён в настройках отчёта.
  • Чтобы поделиться несоответствием, нажмите «Постоянная ссылка» или «Скопировать ссылку». Если на графике не выбран день, ссылка открывает последний пайплайн, а он меняется после завершения новых пайплайнов.

Окно подробностей несоответствия

Настройки отчёта об уязвимостях

Чтобы изменить настройки отчёта:

  1. Откройте отчёт об уязвимостях.
  2. В правом верхнем углу отчёта нажмите «Настройки». Откроется страница «Настройки отчёта об уязвимостях».
  3. Измените настройки и нажмите «Сохранить изменения».

Чтобы вернуться к отчёту, нажмите «Назад к отчёту об уязвимостях».

Доступны следующие настройки:

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

Настройки отчёта об уязвимостях

Дополнительные ресурсы