Результаты сканирований
Результаты выполненных в системе сканирований отображаются на трех уровнях:
- Результаты всех выполненных сканирований (отображаются в пункте меню Scans на глобальной странице).
- Результаты сканирований для выбранного приложения (отображаются в пункте меню Scans на странице приложения).
- Результаты сканирований для выбранного пайплайна (отображаются на вкладке Scans на странице пайплайна, см. раздел «История сканирований пайплайна»).
Информация о сканировании, отображаемая на каждом из этих уровней, является полностью идентичной. Разница заключается в том, какой список сканирований выводится на экран.
Выберите на глобальной странице пункт меню Scans, чтобы получить подробную информацию о результатах всех выполненных в системе сканирований.
Настроить список отображаемых сканирований можно по нескольким параметрам с помощью расположенного справа вверху фильтра:
- by status — по статусу сканирования;
- by application — по имени приложения;
- by pipeline — по имени пайплайна;
- by date — по дате сканирования;
- by release object — по релизным объектам;
- by codebase — по кодовым базам;
- by artifact — по артефактам;
- by instance — по инстансам (экземплярам приложения);
- by structure unit — по структурным единицам приложения.
Примечание
При фильтрации с использованием полей by codebase, by artifact, by instance и by structure unit отображаются первые десять объектов. При поиске объекта в этих полях необходимо ввести не менее трех символов.
С помощью селектора Auto refresh можно включить автоматическое обновление отображаемых на странице результатов сканирований каждые 15 секунд. Настройка автоматического обновления является глобальной – ее значение применяется как на странице с результатами всех выполненных сканирований, так и на странице с результатами сканирований для выбранного приложения.
Каждое выполненное сканирование представлено отдельной строкой. Чтобы получить более подробную информацию о сканировании, нажмите значок рядом с его идентификатором.
Строка сканирования содержит следующие поля:
-
# — идентификатор выполненного сканирования в AppSec.Hub. Нажмите на него, чтобы ознакомиться с подробной информацией о сканировании. Отобразится следующая страница.
На данной странице приведена следующая информация:
- Scan task — номер сканирования в системе.
- Общий статус сканирования.
- Application — имя приложения.
- Pipeline — ссылка на Security Pipeline, запускавшийся для сканирования.
- Started — время и дата запуска сканирования.
- Duration — продолжительность сканирования.
- CI system — используемый инструмент CI/CD.
- External build ID — внешний идентификатор сканирования. При нажатии на значение осуществляется переход в соответствующий инструмент CI/CD.
- Details — сводная информация о сканировании.
- Scan target — информация об объекте сканирования.
- Quality gates — информации о прохождении установленных критериев качества (Quality gates).
- Quality gate condition violations — информация о превышении пороговых значений, определенных в профиле подключенного Quality gates.
- Issue import results — результат импорта security issues в виде диаграммы с распределением по статусам (New, Repeated, Fixed). Рядом с диаграммой располагается иконка, нажав которую можно перейти к перечню security issues, обнаруженных в ходе данного сканирования. Предусмотрена возможность обновления данных на странице (кнопка Refresh data).
- Release object — ссылка на релизный объект, см. рис. ниже.
-
Tagging — статус тегирования и информация о тегируемом артефакте, например, как это показано на рисунке ниже.
Вернемся к строке с информацией о сканировании. Помимо идентификатора сканирования в AppSec.Hub, она содержит следующие поля:
- Общий статус сканирования: SUCCESS/FAILED/IN PROGRESS/CANCELED/BROKEN. Более детальная информация приведена в поле Details.
- Application — имя приложения.
- Started — дата и время начала сканирования.
- Duration — продолжительность сканирования.
- В зависимости от типа пайплайна, для кодовой базы могут быть представлены поля Branch и Commit, а для артефакта — поле Version, содержащее версию просканированной сборки.
- Pipeline — имя Security Pipeline, запускавшегося для сканирования.
- CI/CD — используемый инструмент CI/CD.
- External build — внешний идентификатор сканирования. При нажатии на значение осуществляется переход в соответствующий инструмент CI/CD.
- Details — краткий статус сканирования в инструменте оркестрации и результат применения Quality Gates, например:
- Job failed. No QG checks will be applied (для сканирования с общим статусом FAILED).
- Scan is finished. One or more QG checks are not passed (для сканирования с общим статусом FAILED).
- Scan job is finished. No QG checks have been applied (для сканирования с общим статусом SUCCCCES).
- Scan job is finished. All QG checks are done (для сканирования с общим статусом SUCCCCES).
- Jenkins job build status: ABORTED (для сканирования с общим статусом CANCELED).
-
Unable to read build 7 status for codebase 'new_cb': Unable to find 'max/DVJA/SAST_new_cb' job: Connect to jenkins.dev.yourcompany.com:80 failed: Connection refused (Connection refused) (для сканирования с общим статусом BROKEN).
Важное замечание
Заметим, что с учетом установленного Quality Gate, результаты сканирования с точки зрения инструмента оркестрации, например, Jenkins, и с точки зрения AppSec.Hub могут значительно различаться. Выполнение сканирования в инструменте оркестрации могло пройти успешно, однако определенные в QG критерии с точки зрения серьезности обнаруженных рисков безопасности (security risks) и рисков, связанных с корректностью использования лицензии (compliance risks), при этом могут быть не выполнены. В этом случае статус QG Check в AppSec.Hub может иметь значение Failed, и выполнение Security Pipeline должно быть прервано, поскольку критерии QG не были выполнены. Например, после невыполнения критерия QG не должен быть осуществлен шаг по разворачиванию этой сборки в целевом окружении. Если QG не был установлен, то результат сканирования в AppSec.Hub определяется как Passed, если оно успешно прошло в инструменте оркестрации. Статус сканирования в AppSec.Hub с точки зрения QG отображается в поле SAST QG.
-
SCAN QG — статус выполнения сканирования в AppSec.Hub с точки зрения установленных SAST QG, SCA QG и DAST QG. Если эти QG не были установлены, поле будет пустым. Если какой-либо QG установлен, но не применим для данного вида тестирования, это поле также не будет содержать информации об этом QG. Если какой-либо QG был установлен, но критерий, заданный в QG, не был выполнен, это поле будет содержать соответствующий значок с названием практики в красном овале, например, SAST. Если QG был установлен и критерий, заданный в QG, был выполнен, это поле будет содержать соответствующий значок с названием практики в зеленом овале, например, SAST. Нажмите идентификатор выполненного сканирования, чтобы получить детальную информацию о результате сканирования.
В конце каждой строки с информацией о сканировании находится кнопка Re-run scan .
Примечание
При отсутствии у пользователя роли Менеджер кнопка перезапуска сканирования Re-run scan не будет отображаться в строке с информацией о сканировании. Это относится к глобальной странице с результатами всех выполненных сканирований, к странице с результатами сканирований для выбранного приложения и к странице с результатами сканирований для выбранного пайплайна.
Такая же кнопка расположена справа вверху на странице с подробной информацией о сканировании.
Примечание
При отсутствии у пользователя роли Менеджер кнопка перезапуска сканирования Re-run scan не будет отображаться на странице с подробной информацией о сканировании.
Эта кнопка запускает новое сканирование с теми же параметрами, с которыми было запущено сканирование, к которому относится данная кнопка. При нажатии этой кнопки окно с параметрами запускаемого сканирования не отображается на экране, требуется просто подтвердить запуск сканирования нажатием кнопки Confirm в появившемся окне.
Примечание
Перезапуск сканирования будет работать корректно, если не было изменений в конфигурации пайплайна. Если конфигурация пайплайна менялась (например, была изменена конфигурация объекта сканирования, или в пайплайн был добавлен еще один объект сканирования), то возможна некорректная работа сканирования с недостоверным результатом, так как для измененного пайплайна будут применены устаревшие параметры от выбранного сканирования.
Примечание
Возможна ситуация, когда пайплайн не активен (переключатель Pipeline activity на вкладке Settings выключен и имеет серый цвет),
В этом случае попытка перезапуска сканирования с помощью кнопки Re-run scan приведет к появлению предупреждения о невозможности запуска сканирования из-за неактивного состояния пайплайна.