SBOM (Software Bill of Materials) — это документ (или машинно-читаемый файл), который содержит полный список всех компонентов, библиотек и зависимостей, включённых в программное обеспечение.
Это как «спецификация» или «накладная» на ПО: показывает, из чего оно состоит, включая версии и поставщиков компонентов.
Зачем нужен SBOM?
Безопасность — если обнаружена уязвимость в какой-либо библиотеке, вы быстро узнаете, затронуто ли ваше ПО.
Соответствие требованиям — всё больше отраслевых стандартов и регуляторов требуют SBOM (например, президентский указ США EO 14028).
Управление рисками цепочки поставок — позволяет понять, какие сторонние или опенсорс-компоненты используются.
Лицензионная чистота — позволяет проверить, соответствуют ли лицензии библиотек корпоративной политике.
Из чего состоит SBOM?
В зависимости от стандарта (CycloneDX, SPDX и др.), SBOM обычно включает:
список всех компонентов с их названием, версией, поставщиком;
уникальные идентификаторы компонентов (например, Package URL или SHA-хеши);
зависимости между компонентами (кто что импортирует);
информацию о лицензиях;
опционально: ссылки на репозитории, описание уязвимостей (если известно), авторов сборки.