Запуск сканера в режиме SBOM
Kaspersky Security для контейнеров поддерживает возможность запуска сканера для проверки образов на наличие уязвимостей в режиме
. В данном случае решение осуществляет сканирование специально созданного SBOM-файла, а не TAR-архива.Преимущества использования SBOM включают в себя:
- Меньший объем ресурсов, необходимых для сканирования образов на уязвимости.
- Экономия времени на сканирование за счет автоматической проверки корректности использования и функционирования компонентов решения.
- Возможность сканирования всех имеющихся в образе уязвимостей без исключения.
- Большая надежность получаемых результатов сканирования.
В рамках работы в CI/CD процесс сканирования состоит из двух этапов: получение SBOM-файла и последующее сканирование образа с использованием полученной спецификации программного обеспечения. Процесс сканирования образов реализуется следующим образом:
- Сканер в CI/CD формирует перечень компонентов образа и направляет сгенерированный артефакт в Kaspersky Security для контейнеров.
- При помощи приложения для обработки заданий на сканирование решение передает принятый 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 в формате
или .Чтобы сгенерировать 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-файлу.