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

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

Trivy

Для чего

Trivy — комбайн «два в одном»: он и генерирует SBOM (инвентаризация пакетов образа, ФС, git-репозитория), и сам сканирует найденное на уязвимости, лицензии, секреты и ошибки конфигурации. В контексте генерации SBOM важно именно то, что один проход даёт и список компонентов в CycloneDX/SPDX, и привязку находок к нему.

Как применяют

Генерация SBOM и отдельный прогон сканера поверх уже готового SBOM:

trivy image --format cyclonedx --output sbom.cdx.json registry.example.org/app:1.4.2
trivy sbom --format json --output findings.json sbom.cdx.json

В режиме image Trivy раскладывает образ по слоям и определяет ОС-пакеты (apk/deb/rpm) и пакеты приложений; в режиме sbom он не пересканирует артефакт, а берёт координаты прямо из переданного документа.

Режим Команда Что делает
Генерация SBOM trivy image --format cyclonedx ... инвентаризация образа → CycloneDX/SPDX
Сканирование артефакта trivy image registry.example.org/app:1.4.2 сам инвентаризирует и сразу ищет уязвимости
Сканирование готового SBOM trivy sbom sbom.cdx.json берёт координаты из документа, не пересканирует

Два инструмента в одном Trivy совмещает роли генератора и сканера. В схеме «генератор отдельно, сканер отдельно» используйте trivy sbom поверх документа от Syft/cdxgen, чтобы не смешивать инвентаризацию и поиск уязвимостей в одном непрозрачном проходе.

Сильные стороны

Ограничения

Offline / on-premise

Свежесть БД — отдельная задача В закрытом контуре база advisory не обновляется сама. Устаревшая БД даёт ложное «чисто»: новые CVE просто не появятся в выводе. Нужен регламент регулярной выгрузки vuln DB во внутреннее OCI-зеркало (TRIVY_DB_REPOSITORY).

Работает в закрытом контуре с оговоркой: базы данных (vuln DB, java-index) скачиваются заранее командой и подкладываются локально, дальше сканирование идёт без сети (--offline-scan, переменные TRIVY_DB_REPOSITORY на внутреннее зеркало OCI). Сама генерация SBOM сети не требует.

Связанные темы

М05 Инструменты генерации SBOM · М06 Поиск уязвимостей · П05. Trivy как генератор и сканер · П38. Честный SBOM контейнерного образа · Grype · Syft · CycloneDX