Kaspersky Security для контейнеров поддерживает возможность запуска сканера для проверки образов на наличие уязвимостей в режиме SBOM. В данном случае решение осуществляет сканирование специально созданного SBOM-файла, а не TAR-архива.
Преимущества использования SBOM включают в себя:
В рамках работы в CI/CD процесс сканирования состоит из двух этапов: получение SBOM-файла и последующее сканирование образа с использованием полученной спецификации программного обеспечения. Процесс сканирования образов реализуется следующим образом:
Для сканирования в режиме SBOM Kaspersky Security для контейнеров запускает сканер с предустановленными базами уязвимостей и других вредоносных объектов (scanner:v2.0-with-db
, scanner:v2.0-with-db-java
).
Для сканирования образов в CI/CD в файле требуется указать значения следующих переменных окружения:
API_TOKEN
– указывается значение токена API Kaspersky Security для контейнеров.API_BASE_URL
– указывается URL Kaspersky Security для контейнеров.API_CA_CERT
– указывается СА-сертификат Ingress-контроллера, что позволяет запускаемому в CI/CD сканеру убедиться в подлинности сервера приема данных. Если вы используете самоподписанный сертификат или специально хотите пропустить проверку сервера приема данных с помощью СА-сертификата Ingress-контроллера, значение переменной для пропуска проверки указывается следующим образом:SKIP_API_SERVER_VALIDATION: 'true'
COMPANY_EXT_REGISTRY_USERNAME
– указывается имя учетной записи в реестре сканируемого образа.COMPANY_EXT_REGISTRY_PASSWORD
– указывается пароль для реестра сканируемого образа.COMPANY_EXT_REGISTRY_TLS_CERT
– указываются данные сертификата для безопасного подключения к реестру.Данные сертификата указываются в виде строки в формате .PEM:
-----BEGIN CERTIFICATE-----\n... <
данные сертификата
> ...\n-----END CERTIFICATE-----
.
HTTP_PROXY
– указывается прокси-сервер для запросов по протоколу HTTP.HTTPS_PROXY
– указывается прокси-сервер для запросов по протоколу HTTPS.NO_PROXY
– указываются домены или соответствующие им маски для исключения из проксирования.Для последующего сканирования Kaspersky Security для контейнеров генерирует файл отчета в формате .JSON. Также вы можете сформировать артефакт c SBOM для скачивания в рамках процесса CI/CD в формате CycloneDX или SPDX.
Чтобы сгенерировать SBOM-файл в формате .SPDX при работе сканера через создание SBOM,
в конфигурационном файле .gitlab-ci.yml укажите следующую команду:
- /bin/sh /entrypoint.sh $SCAN_TARGET --sbom --spdx --stdout > example.spdx
где:
<--sbom>
– индикатор создания SBOM-файла;
<--spdx>
– указание на сборку артефакта в формате .SPDX;
<--stdout > example.spdx>
– индикатор вывода данных в файл в формате .SPDX.
Чтобы сгенерировать SBOM-файл в формате .СDX при работе сканера через создание SBOM,
в конфигурационном файле .gitlab-ci.yml укажите следующую команду:
- /bin/sh /entrypoint.sh $SCAN_TARGET --sbom --cdx --stdout > example.cdx.json
где:
<--sbom>
– индикатор создания SBOM-файла;
<--cdx>
– указание на сборку артефакта в формате .CDX
<--stdout > example.cdx.json>
– индикатор вывода данных в файл в формате .JSON.
Полученный при этом файл (например, example.cdx.json) указывается как артефакт: artifacts: paths:
Сканирование при помощи создания SBOM-файла относится только к проверке образа на наличие уязвимостей. Если в процессе CI/CD требуется провести сканирование на другие риски и угрозы (например, на наличие ошибок конфигурации), требуется отдельно запускать соответствующее сканирование и добавлять полученные результаты в приложение для обработки заданий на сканирование в дополнение к SBOM-файлу.
В начало