Kaspersky Security для контейнеров

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

27 марта 2024

ID 270274

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

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

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

Запуск сканера в GitLab

Чтобы запустить сканер в режиме 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.1.1.1-lite

    entrypoint: [""]

    pull_policy: always

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

    k8s

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

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

    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>

  4. При необходимости укажите переменную для проверки сервера приема данных в CI/CD с помощью СА-сертификата Ingress-контроллера:

    API_CA_CERT: ${KCS_CA_CERT}

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

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

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

  6. Укажите команду для создания SBOM-файла при запуске сканера в одном из следующих поддерживаемых форматов:
    • Для создания артефакта в формате .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

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

      script:

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

      artifacts:

      paths:

      - artifact-result.spdx

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

Запуск сканера в Docker

Чтобы запустить сканер в режиме liteSBOM в Docker:

  1. Укажите веб-адрес хост-сервера API Kaspersky Security для контейнеров:

    -e API_BASE_URL=https://company.inno.local

  2. Укажите значение переменной для пропуска проверки сервера приема данных с помощью СА-сертификата Ingress-контроллера:

    -e SKIP_API_SERVER_VALIDATION=true

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

    -e API_TOKEN=<значение токена API>

  4. Укажите информацию для запуска сканера, содержащего базы уязвимостей и других вредоносных объектов:

    repo.kcs.company.com/images/scanner:v1.1.1-with-db

  5. Если необходимо сформировать артефакт для скачивания в формате .SPDX, .HTML или .JSON, укажите следующее:

    --<формат артефакта> --stdout > result.<формат файла>

    Например,

    --html --stdout > result.html

  6. Нажмите на клавишу Enter, чтобы запустить сканер.

    Если при вызове сканера появляется ошибка преобразования имени домена Name does not resolve, до переменной API_BASE_URL нужно указать адрес до внутреннего DNS сервера вашей организации. Например,

    --dns 10.0.xx.x

    API_BASE_URL: https://company.inno.local/

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

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

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