С помощью решения вы можете сканировать образы, которые используются в процессах CI/CD. Для проверки образов из CI/CD вам требуется настроить интеграцию решения с процессами CI/CD.
Между средой CI/CD и решением должна быть обеспечена безопасность передачи данных от прослушивания и перехвата сетевого трафика.
Чтобы выполнять проверку образов или репозиториев (для сканирования конфигурационных файлов), используемых в процессе CI/CD, вам нужно добавить в пайплайн CI/CD отдельный этап, на котором запускается сканер Kaspersky Security для контейнеров.
Для проведения сканирования образов из CI/CD в конфигурационном файле интеграции с репозиторием сканеру требуется указать переменные окружения API_BASE_URL (веб-адрес хост-сервера API Kaspersky Security для контейнеров) и API_TOKEN (токен для доступа к API Kaspersky Security для контейнеров). Также необходимо указать API_CA_CERT (сертификат для проверки хост-сервера API решения) или SKIP_API_SERVER_VALIDATION=true для пропуска такой проверки.
Результаты сканирования передаются на сервер и отображаются в консоли управления в разделе Ресурсы → CI/CD. В представленной таблице перечислены образы, для которых проводилась проверка, указываются результаты оценки риска и выявленные уязвимости.
По ссылке в названии образа вы можете открыть страницу, содержащую подробную информацию о результатах сканирования образа. Страница аналогична странице с результатами сканирования образов из реестров.
Kaspersky Security для контейнеров также отображает тип артефакта для каждого объекта. Используются два основных артефакта:
Для каждого объекта проверки можно указывать номер сборки (BUILD_NUMBER) и пайплайн сборки (BUILD_PIPELINE). С помощью этих параметров можно определить, на каком этапе в объекте произошел сбой.
Для образов из CI/CD недоступно повторное сканирование.
В Kaspersky Security для контейнеров осуществляются следующие виды сканирования в CI/CD:
Чтобы провести сканирование образа из реестра образов,
выполните команду запуска сканирования в следующем формате:
/scanner [TARGET] --stdout
где:
<TARGET> – полный адрес образа в реестре;<--stdout> – вывод данных в журнал событий безопасности.Для доступа к реестру необходимо установить в переменных окружения логин COMPANY_EXT_REGISTRY_USERNAME и пароль (токен) COMPANY_EXT_REGISTRY_PASSWORD.
Примеры сканирования образов в GitLab CI/CD и Jenkins CI/CD.
Чтобы провести сканирование образа из TAR-архива:
/scanner [TARGET] --file --stdout
где:
<TARGET> – путь к файлу образа для сканирования;<--file> – флаг, указывающий на сканирование файла TARGET;<--stdout> – вывод данных в журнал событий безопасности.Пример конфигурационного файла со значениями параметров для сканирования TAR-архива
Чтобы провести сканирование Git-репозитория:
GITHUB_TOKEN или GITLAB_TOKEN)./scanner [TARGET] --repo [--branch BRANCH] [--commit COMMIT] --stdout
где:
<TARGET>– веб-адрес (URL) Git-репозитория;<--repo> – флаг, указывающий на сканирование файла TARGET;<--branch BRANCH> – ветка репозитория для сканирования;<--commit COMMIT> – хеш коммита для сканирования;<--stdout> – вывод данных в журнал событий безопасности.Пример конфигурационного файла с переменными окружения для сканирования образа из Git-репозитория
Результаты сканирования можно посмотреть в разделе Ресурсы → CI/CD, а также получить в форматах .SPDX, .JSON и .HTML.
В начало