Kaspersky Security для контейнеров предоставляет возможность запуска сканера для проверки образов на наличие уязвимостей в режиме lite SBOM. В данном случае решение осуществляет сканирование специально созданного SBOM-файла, а результаты этого сканирования становятся доступны на этапе CI/CD.
Между средой CI/CD и решением должна быть обеспечена безопасность передачи данных от прослушивания и перехвата сетевого трафика.
Для получения результатов вы можете сформировать артефакт для скачивания в формате .SPDX, .HTML или .JSON.
Запуск сканера в GitLab
Чтобы запустить сканер в режиме lite SBOM в GitLab, при настройке сканирования образов в процессе CI/CD измените конфигурационный файл .gitlab-ci.yml следующим образом:
scan_image:
stage: scanner
image:
name:repo.cloud.example.com/repository/company/scanner:v.1.2-lite
entrypoint: [""]
pull_policy: always
k8s
В приведенном примере указан тег k8s для обозначения Kubernetes, вы можете указать тег для другой поддерживаемой платформы оркестрации.
SCAN_TARGET: ${CI_REGISTRY_IMAGE}:master
COMPANY_EXT_REGISTRY_USERNAME: ${COMPANY_EXT_REGISTRY_USERNAME}
COMPANY_EXT_REGISTRY_PASSWORD: ${COMPANY_EXT_REGISTRY_PASSWORD}
BUILD_NUMBER: ${CI_JOB_ID}
BUILD_PIPELINE: ${CI_PIPELINE_ID}
API_TOKEN: <значение токена API>
API_CA_CERT: ${KCS_CA_CERT}
Если переменная API_CA_CERT не задана, проверка будет запускаться, но не будет пройдена.
API_BASE_URL: <веб-адрес>
script:
- /bin/sh /entrypoint.sh $SCAN_TARGET --stdout > artifact-result.json
artifacts:
paths:
- artifact-result.json
script:
- /bin/sh /entrypoint.sh $SCAN_TARGET --html --stdout > artifact-result.html
artifacts:
paths:
- artifact-result.html
script:
- /bin/sh /entrypoint.sh $SCAN_TARGET --spdx --stdout > artifact-result.spdx
artifacts:
paths:
- artifact-result.spdx
Пример настройки запуска сканера в режиме lite SBOM и создания артефакта в формате .HTML в GitLab
Запуск сканера в Docker
Чтобы запустить сканер в режиме lite SBOM в Docker:
-e API_BASE_URL=https://company.local
-e SKIP_API_SERVER_VALIDATION=true
-e API_TOKEN=<значение токена API>
repo.kcs.company.com/images/scanner:v1.2-lite
--<формат артефакта> --stdout > result.<формат файла>
Например,
--html --stdout > result.html
Если при вызове сканера появляется ошибка преобразования имени домена Name does not resolve, до переменной API_BASE_URL нужно указать адрес до внутреннего DNS сервера вашей организации. Например,
--dns 10.0.xx.x
API_BASE_URL: https://company.local/
Пример настройки запуска сканера в режиме lite SBOM и создания артефакта в формате .JSON в Docker
Результаты сканирования можно получить в указанном вами формате, а также посмотреть в разделе Ресурсы → CI/CD.
В начало