Запуск сканера в режиме lite SBOM

02 июня 2026

ID 297412

Развернуть всё | Свернуть всё

Kaspersky Container Security предоставляет возможность запуска сканера для проверки образов на наличие уязвимостей в режиме lite SBOM. В данном случае решение осуществляет сканирование специально созданного SBOM-файла, а результаты этого сканирования становятся доступны на этапе CI/CD.

Между средой CI/CD и решением должна быть обеспечена безопасность передачи данных от прослушивания и перехвата сетевого трафика.

Для получения результатов вы можете сформировать артефакт для скачивания в формате SPDX, HTML, JSON или CDX.

Результаты сканирования можно получить в указанном вами формате, а также посмотреть в разделе Ресурсы → CI/CD.

Чтобы запустить сканер в режиме lite SBOM в GitLab, при настройке сканирования образов в процессе CI/CD измените конфигурационный файл .gitlab-ci.yml следующим образом:

  1. Добавьте информацию по образу сканера, запускаемого на этапе сканирования образов в процессе CI/CD в следующем виде:

    scan_image:

    stage: scanner

    image:

    name:repo.cloud.example.com/repository/company/scanner:v.2.3.0-lite

    entrypoint: [""]

    pull_policy: always

  2. Укажите тег платформы оркестрации в следующем виде:

    k8s

    В приведенном примере указан тег k8s для обозначения Kubernetes, вы можете указать тег для другой поддерживаемой платформы оркестрации.

  3. Укажите такие переменные как идентификатор сборки, данные реестра сканируемого образа и сертификата для безопасного подключения к этому реестру, идентификатор пайплайна и токен API для авторизации запросов от CI/CD сканера в Kaspersky Container Security в следующем виде:

    SCAN_TARGET: ${CI_REGISTRY_IMAGE}:master

    COMPANY_EXT_REGISTRY_USERNAME: ${COMPANY_EXT_REGISTRY_USERNAME}

    COMPANY_EXT_REGISTRY_PASSWORD: ${COMPANY_EXT_REGISTRY_PASSWORD}

    COMPANY_EXT_REGISTRY_TLS_CERT: ${COMPANY_EXT_REGISTRY_TLS_CERT}

    BUILD_NUMBER: ${CI_JOB_ID}

    BUILD_PIPELINE: ${CI_PIPELINE_ID}

    API_TOKEN: <значение токена API>

    HTTP_PROXY: <прокси-сервер для запросов по протоколу HTTP>

    HTTPS_PROXY: <прокси-сервер для запросов по протоколу HTTPS>

    NO_PROXY: <домены или соответствующие им маски для исключения из проксирования>

    Данные сертификата для безопасного подключения к реестру сканируемого образа в переменной COMPANY_EXT_REGISTRY_TLS_CERT указываются в виде строки в формате PEM:
    -----BEGIN CERTIFICATE-----\n... <данные сертификата> ...\n-----END CERTIFICATE-----.

  4. При необходимости укажите переменную для проверки сертификата API-интерфейса решения:

    API_CA_CERT: ${KCS_CA_CERT}

    Если переменная API_CA_CERT не задана, проверка будет запускаться, но не будет пройдена.

  5. Укажите веб-адрес хост-сервера API Kaspersky Container Security:

    API_BASE_URL: <веб-адрес>

  6. Укажите команду для создания файла артефакта при запуске сканера в одном из следующих поддерживаемых форматов:
    • Для создания артефакта в формате JSON:

      script:

      - /bin/sh /entrypoint.sh $SCAN_TARGET --stdout > artifact-result.json

      artifacts:

      paths:

      - artifact-result.json

    • Для создания артефакта в формате HTML:

      script:

      - /bin/sh /entrypoint.sh $SCAN_TARGET --html --stdout > artifact-result.html

      artifacts:

      paths:

      - artifact-result.html

    • Для создания артефакта SBOM в формате SPDX:

      script:

      - /bin/sh /entrypoint.sh $SCAN_TARGET --spdx --stdout > artifact-result.spdx

      artifacts:

      paths:

      - artifact-result.spdx

    • Для создания артефакта SBOM в формате CDX:

      script:

      - /bin/sh /entrypoint.sh $SCAN_TARGET --cdx --stdout > artifact-result.cdx.json

      artifacts:

      paths:

      - artifact-result.cdx.json

Пример настройки запуска сканера в режиме lite SBOM и создания артефакта в формате HTML в GitLab

В случае ограниченных ресурсов, вы можете запускать сканер Kaspersky Container Security отдельно от вычислительных узлов процесса CI/CD. Например, на Docker-узле с помощью команды docker run или в виде объекта Job в кластере Kubernetes.

Для максимальной экономии ресурсов мы рекомендуем использовать образ scanner:2.4.0-lite, так как он не содержит баз уязвимостей и отправляет сформированный по результатам проверки целевого образа SBOM-файл на анализ в решение с помощью API.

Для запуска сканера Kaspersky Container Security вне процесса CI/CD необходимо указать следующие обязательные параметры:

  • API_TOKEN: <значение токена API> – токен пользователя Kaspersky Container Security для аутентификации в API-интерфейсе решения.
  • API_BASE_URL: <веб-адрес> – ссылка для доступа к API-интерфейсу Kaspersky Container Security. Доступ может осуществляться по протоколам HTTP и HTTPS, в зависимости от настроек окружения развернутого решения.
  • API_CA_CERT: <сертификат в формате PEM> – переменная для проверки сертификата API-интерфейса решения.
  • SKIP_API_SERVER_VALIDATION=true – переменная, которую при необходимости можно указать для пропуска проверки сертификата API-интерфейса Kaspersky Container Security.

Вы также можете указать дополнительные параметры для работы сканера:

  • COMPANY_EXT_REGISTRY_USERNAME: <имя пользователя реестра> – имя пользователя реестра, где хранится образ для проверки сканером.
  • COMPANY_EXT_REGISTRY_PASSWORD: <пароль пользователя реестра> – пароль пользователя реестра, где хранится образ для проверки сканером.
  • BUILD_NUMBER: <идентификатор номера сборки> – идентификатор, который используется для отслеживания номера сборки в интерфейсе решения. Kaspersky Container Security отображает номер в результатах проверки в процессе CI\CD.
  • BUILD_PIPELINE: <идентификатор номера пайплайна> – идентификатор, который используется для отслеживания номера пайплайна в интерфейсе решения. Kaspersky Container Security отображает номер в результатах проверки в процессе CI\CD.
  • HTTP_PROXY: <прокси-сервер для запросов по протоколу HTTP> – переменная, которая указывает на использование HTTP-прокси сервера, когда вам требуется доступ к внешним ресурсам.
  • HTTPS_PROXY: <прокси-сервер для запросов по протоколу HTTPS> – переменная, которая указывает на использование HTTPS- прокси когда вам требуется доступ к внешним ресурсам.
  • NO_PROXY: <домены или соответствующие им маски для исключения из проксирования> – переменная, которая указывает на доступные локально ресурсы, если используется прокси-сервер.

Настройка запуска сканера в режиме lite SBOM в Docker

Запуск сканера как Job в кластере Kubernetes

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!