Security SBOM generator with vulnerability chechup
23 марта 2026 г. 124

🛠 Security SBOM generator with vulnerability chechup

Салют,

Сегодня хочу поделиться тулой, которую покрутил на выхах. Эта тула помогает быстро и в более удобном виде собирать SBOM для проекта, это будет особенно полезно для сертификации по ФСТЭК России, включая контроля твоего supply-chain.

Тула построена так, что бы ручками не ковыряться в зависимостях, а получать нормальную структурированную картину по составу софта. то есть понятная карта компонентов, версий и метаданных, которая дальше помогает с аудитом, рисками supply chain и проверкой уязвимостей по каждому компоненту.

Именно такой подход хорошо ложится на практики, где SBOM генерится автоматически из репозитория или сборочного артефакта, а потом используется дальше в пайплайнах и системах контроля.

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

• Генерирует SBOM по проекту в одном из стандартных форматов, чтобы его можно было дальше отдавать в другие инструменты или хранить как артефакт

• Помогает привести результат к более удобному виду, чтобы SBOM не был просто «сырой простынёй», а нормально читался

• Подходит для автоматизации в CI/CD, как постоянная часть supply-chain процесса

• Может использоваться как стартовая точка для дальнейшего анализа зависимостей, лицензий и уязвимостей

• Может использоваться для сертификации во ФСТЭК России по требованиям испытательной лаборатории в том числе

• Нормально ложится в сценарии, где нужно быстро получить экспорт зависимостей и потом прогнать их через security-инструменты или загрузить в внешний контур

Функционально

• Генерирует SBOM из локальной директории или Git-репозитория (GitHub / GitLab)

• Сканирует уязвимости через Trivy, OWASP Dependency-Check, Clair

• Встраивает найденные уязвимости в SBOM (CycloneDX 1.5)

• Экспортирует читаемые отчёты: Excel (.xlsx), Word (.docx), ODT (.odt)

• Подписывает итоговый SBOM (SHA-256)

Зачем?

• Перед релизом, чтобы понимать, из чего состоит и какие зависимости используются

• В CI/CD, чтобы SBOM генерировался автоматически на каждый билд или релиз и можно было сверяться с обходными путями от команд для используемых зависимостей

• Для security review, когда нужно быстро показать состав зависимостей и точки риска

• Для compliance и supply-chain контроля

Планирую докрутить

• Более гибкие режимы генерации под разные типы проектов

• Сделать более удобный post-processing и валидацию результата

Links

• PyPi

• DockerHub

• Github Package

Структура

sbom_genform/

├── src/sbom_pipeline/

│ ├── cli.py # secsbom / secsbom-pipeline (typer)

│ ├── pipeline.py # оркестратор

│ ├── generate.py # генерация SBOM

│ ├── dedup.py # дедупликация

│ ├── sign.py # SHA-256 подпись

│ ├── exporter.py # xlsx / docx / odt

│ ├── vuln_merger.py # встраивание уязвимостей

│ ├── config.py # конфигурация

│ └── scanner/

│ ├── trivy.py

│ ├── depcheck.py

│ └── clair.py

├── docker/

│ └── Dockerfile.secgensbom

├── examples/project_inject/ # уязвимый PHP

├── secgensbom/secgensbom.yml # GitLab CI shared template

├── .github/workflows/

│ ├── ci.yml

│ ├── secgensbom.yml

│ └── publish.yml

├── tests/test_smoke.py

├── pyproject.toml

└── .env.example

#appsec #devsecops #specialty #toolchain #techsolution #paper #sbom

#appsec#devsecops#specialty#toolchain#techsolution#paper#sbom
Открыть в Telegram