Приём результатов и событий сканирования безопасности Black Duck

Материал из Документация Ключ-АСТРОМ

Приём результатов и событий сканирования безопасности Black Duck

Принимайте результаты и события сканирования Black Duck в Ключ-АСТРОМ как события безопасности. С контекстом времени выполнения от Ключ-АСТРОМ вы можете сосредоточиться на уязвимостях, которые затрагивают работающие производственные приложения.

Начало работы

Обзор

Интеграция Ключ-АСТРОМ с Black Duck позволяет унифицировать и контекстуализировать результаты безопасности Black Duck для визуализации, анализа и автоматизации в Ключ-АСТРОМ.

Black Duck предоставляет возможности Black Duck Software Composition Analysis (SCA), которые сканируют зависимости с открытым исходным кодом по вашим проектам и версиям для выявления известных уязвимостей безопасности.

Ключ-АСТРОМ принимает и обогащает результаты Black Duck контекстом времени выполнения, чтобы помочь командам DevSecOps фильтровать и приоритизировать риски, которые затрагивают производственные приложения и артефакты кода.

Варианты использования

С принятыми данными вы можете реализовать различные сценарии, такие как:

  • Визуализация и анализ результатов безопасности
  • Обнаружение пробелов в покрытии результатов безопасности
  • Автоматизация и оркестрация результатов безопасности

Требования

Ниже приведены требования для Black Duck и Ключ-АСТРОМ.

Требования Black Duck

  • Активный экземпляр Black Duck с включённым Software Composition Analysis.
  • API-токен для аутентификации. Сгенерируйте его в Black Duck в разделе User Preferences → Access Tokens. Пользователь, генерирующий токен, должен иметь доступ на чтение к проектам, версиям проектов и данным об уязвимостях.

Требования Ключ-АСТРОМ

  • АктивныйШлюз версии 1.330+, который должен:
  * Запускать фреймворк Расширения 2.0
  * Достигать конечных точек API Black Duck на вашем экземпляре Black Duck
  • Разрешения: для получения необходимых разрешений перейдите в раздел Расширения, выберите Расширения и откройте Техническую информацию.
  • Сгенерируйте токен доступа с областью openpipeline.events_security и сохраните его для дальнейшего использования.

Активация и настройка

  1. В Ключ-АСТРОМ найдите Black Duck и выберите Установить.
  2. Следуйте инструкциям на экране для настройки расширения.
  3. Проверьте конфигурацию, выполнив следующие запросы в Notebooks:

Для событий результатов:

fetch security.events
| filter dt.system.bucket == "default_securityevents"
| filter event.provider=="Black Duck"
    AND event.type=="VULNERABILITY_FINDING"

Для событий сканирования:

fetch security.events | filter dt.system.bucket == "default_securityevents" | filter event.provider=="Black Duck"

   AND event.type=="VULNERABILITY_SCAN"

После установки и запуска расширения вы можете получить к нему доступ и управлять им в Ключ-АСТРОМ через раздел Расширения.

Детали

Как это работает

Интеграция Ключ-АСТРОМ с Black Duck — это расширение, работающее на АктивныйШлюз Ключ-АСТРОМ. После включения и настройки расширения Black Duck для Ключ-АСТРОМ:

  • Оно периодически опрашивает API Black Duck для сбора спецификации материалов (BOM) для каждой версии проекта и выявления уязвимых компонентов.
  • Оно использует журнал Black Duck для обнаружения версий проектов, в которых с момента последнего цикла приёма появилась новая или обновлённая активность сканирования.
  • Ключ-АСТРОМ принимает полученные данные и сопоставляет их с Семантическим словарём Ключ-АСТРОМ.
  • Ключ-АСТРОМ сохраняет данные в бакете default_securityevents.

Лицензирование и затраты

Информацию о выставлении счетов см. в разделе «События».

Часто задаваемые вопросы

С какими продуктами Black Duck интегрируется Ключ-АСТРОМ? Эта интеграция принимает результаты безопасности и события сканирования из Black Duck Software Composition Analysis (SCA).

Какая модель данных используется для событий безопасности, поступающих из Black Duck? События результатов уязвимостей хранят отдельные результаты уязвимостей, о которых сообщает Black Duck для каждого затронутого компонента и версии проекта.

События сканирования уязвимостей указывают покрытие сканирования для отдельных версий проектов, включая агрегированные подсчёты результатов по степени серьёзности.

Какие результаты безопасности Black Duck импортирует Ключ-АСТРОМ? Если вы настроили расширение на приём данных с интервалом в n часов, каждый запуск повторно принимает версию проекта, если в журнале Black Duck обнаружена активность (такая как сканирование, повторное сканирование или добавление компонента) за последние n часов.

При первом приёме Ключ-АСТРОМ принимает все версии проектов независимо от недавней активности в журнале.

Если Ключ-АСТРОМ не обнаруживает новых или обновлённых результатов для версии проекта, он не принимает ни одного для этой версии.

Какие поля расширения добавляются к основным полям событий, принятых из Black Duck? Пространство имён blackduck добавляется для специфичных для Black Duck атрибутов поверх основной схемы событий безопасности. Полная исходная полезная нагрузка хранится в event.original_content.

Примеры полей:

  • blackduck.project.id: идентификатор проекта Black Duck.
  • blackduck.project.name: имя проекта.
  • blackduck.project.version.id: идентификатор версии проекта Black Duck.
  • blackduck.project.version.name: имя версии проекта.
  • blackduck.project.owner.name: отображаемое имя владельца проекта в Black Duck.
  • blackduck.project.owner.id: идентификатор владельца проекта в Black Duck.
  • blackduck.project.version.journal.latest.id: идентификатор события последней записи журнала Black Duck для этой версии проекта.
  • blackduck.project.version.journal.latest.update: временная метка последней записи журнала Black Duck.
  • blackduck.finding.createdAt: временная метка, когда запись об исправлении была впервые создана в Black Duck.
  • blackduck.ignored: логический флаг, указывающий, помечен ли результат как игнорируемый в Black Duck.
  • blackduck.component.ecosystem: экосистема пакетов затронутого компонента (например, npm, maven, pypi).
  • blackduck.component.path: путь к компоненту внутри просканированного артефакта.
  • blackduck.codelocation.urls: список URL-адресов расположения кода Black Duck, связанных с этим сканированием.

Какие типы активов Black Duck поддерживаются Ключ-АСТРОМ для контекстуализации во время выполнения? CODE_ARTIFACT: все результаты из Black Duck генерируются оценками уязвимостей артефактов кода и сопоставляются со значением CODE_ARTIFACT в поле object.type. Эти результаты не сопоставляются изначально с сущностями времени выполнения, отслеживаемыми Ключ-АСТРОМ.

Как нормализуется оценка риска для результатов Black Duck? Ключ-АСТРОМ нормализует серьёзность и оценки риска для всех результатов, принятых через эту интеграцию. Это помогает согласованно приоритизировать результаты независимо от их источника.

dt.security.risk.level сопоставляется напрямую из серьёзности компонента BOM Black Duck (CRITICAL, HIGH, MEDIUM или LOW).

dt.security.risk.score выводится из dt.security.risk.level с использованием следующего сопоставления:

dt.security.risk.level (сопоставлено из серьёзности Black Duck BOM) dt.security.risk.score (сопоставлено из dt.security.risk.level)
CRITICAL 10.0
HIGH 8.9
MEDIUM 6.9
LOW 3.9