Пиков / КАПО
Как читать авторский курс и нормативные материалы

Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.

М05. Инструменты генерации SBOM

Зачем этот модуль

SBOM не «получается» нажатием одной кнопки — то, что попадёт в bom.json, целиком определяется тем, какой инструмент запустили, на каком входе и в каком режиме. Syft, Trivy и cdxgen смотрят на проект под разными углами: один читает манифесты и lock-файлы, другой умеет залезть в собранный образ и бинарь, третий вытягивает граф из системы сборки. Запусти три инструмента на одном репозитории — получишь три разных SBOM с разным числом компонентов, разной полнотой PURL и разным набором лицензий. Этот модуль учит понимать, что именно видит и чего не видит каждый генератор, осознанно выбирать инструмент под экосистему и фиксировать вход так, чтобы результат был воспроизводим.

Отдельный фокус модуля — C/C++, где ни один генератор не отдаёт полный состав сам: cdxgen восстанавливает часть графа из системы сборки, а недостающие факты (динамические библиотеки, маппинг на DEB) дотягивает обогащение «генератором фактов». Глубокий разбор C/C++ — в М09; здесь мы разбираем инструменты как таковые.

Ключевые понятия

Миникарта модуля

Схема: М05. М05. Инструменты генерации SBOM
Схема из авторского курса. Нажмите, чтобы открыть в полном размере.

Нормативная опора

NIST SP 800-218 SSDF (PS.3.2 — формировать и сохранять SBOM) · BSI TR-03183-2 v2.1.0 (требования к качеству SBOM) · CycloneDX ECMA-424 (формат) · NTIA Minimum Elements for SBOM · CISA Minimum Elements for SBOM · ГОСТ Р 56939-2024

Материалы модуля

Связанные практики

П03. Генерация SBOM через Syft · П04. Генерация SBOM через cdxgen для C C++ · П05. Trivy как генератор и сканер

Связь с другими модулями

Практический результат

Слушатель умеет: выбрать генератор под экосистему; запустить Syft, Trivy и cdxgen с зафиксированными версией и входом; прочитать bom.json и оценить, что вошло в SBOM, а что осталось слепой зоной; объяснить, зачем сырой C/C++ SBOM отдают на обогащение «генератору фактов».