В целях обеспечения Безопасности、Сокращение развития、Затраты, связанные с закупками и обслуживанием,Сложная и динамичная современная цепочка поставок программного обеспечения выдвигает более высокие требования к прозрачности программных активов.。Используйте очисткуСпецификация программного обеспечения (SBOM)Собирайте и делитесь информацией,И на этом основании осуществлять лазейки, лицензии и управление авторизацией и т.д.,Может выявить слабые места во всей цепочке поставок программного обеспечения.、Повысьте прозрачность цепочки поставок программного обеспечения и укрепите взаимное доверие между вышестоящими и нижестоящими цепочками поставок.、Эффективно управляйте угрозой атак в цепочке поставок программного обеспечения.
По определению SBOM представляет собой пакет, содержащий все компоненты, используемые в программных приложениях.、Список библиотек и других зависимостей。Применимо на международном уровнеSBOMСтандартные форматы включают в себяSPDX, CDX и SWID,Первые два используются более широко, поскольку записывают более подробную информацию о зависимостях.
DSDX(Digital Supply-chain Data Exchange)сделан из Сообщество OpenSCAведущий,Открытый исходный код Китай、Научно-исследовательский институт телекоммуникаций、При поддержке ZTEПервая в Китае цифровая цепочка поставок в формате SBOM,Больше подходит для сценариев практического применения китайских предприятий.,И он совместим с международными стандартами SPDX, CDX, SWID и отечественными стандартами.
Далее будетSPDX, CDX и DSDXтри стандартаSBOMСравнительный анализ форматов。
01 SPDX
1.1 Лицензия
cc-by-3.0
1.2 Знакомство с форматом
SPDX(Software Package Data Exchange)даLinux Фондодин из Открытый исходный Проект кода, задуманный как общий формат для сбора и обмена данными программного обеспечения, был включен в международный стандарт SBOM (ISO/IEC). 5962), который в настоящее время является единственным стандартным форматом SBOM, признанным этим стандартом. В мае этого года проект выпустил v3.0-rc1 (версия-кандидат, полного официального документа пока нет. Наиболее широко используемой версией по-прежнему является версия v2.2, выпущенная в 2020 году).
Манифест SBOM стандартного формата SPDX содержит подробные поля для описания информации о лицензии и охватывает сценарии ссылок на файлы кода и фрагменты, начиная с версии 2.1, с точки зрения безопасности, он также поддерживает связь с данными об уязвимостях; Выходные форматы, поддерживаемые SPDX, включают SPDX, XML, JSON, RDF и YAML.
1.3 Описание поля
Стандарт формата SPDX (v2.2) SBOM содержит следующие части:
02 CDX
2.1 Лицензия
apache-2.0
2.2 Знакомство с форматом
CDX (CycloneDX)даOWASPОпубликовано в облегченном видеSBOMстандартный,Сосредоточьтесь на автоматизации использования и управления SBOM на протяжении всего цикла сборки программного обеспечения. Последняя версия — v1.5, выпущенная в июне этого года.
По сравнению с SPDX, CDX предоставляет больше информации, связанной с безопасностью, на основе авторизации записи и отношений зависимостей, и относительно больше подходит для аудита безопасности, управления уязвимостями и других сценариев. Кроме того, CDX также поддерживает описание аппаратного обеспечения и облачных систем и имеет специальный раздел для записи информации об обслуживании и информации о производстве/развертывании, который имеет более высокую масштабируемость. Однако, соответственно, его полная конструкция поля и вложенные связи будут более сложными. Выходные форматы, поддерживаемые CDX, — это XML и JSON.
2.3 Описание поля
Стандарт SBOM формата CDX (v1.5) содержит следующие части:
03 DSDX
3.1 Знакомство с форматом
В настоящее время в моей стране не существует национального стандарта, связанного со стандартным форматом SBOM; на основе практических отзывов большинства пользователей сообщества и исследований международных стандартных форматов DSDX, запущенный в августе этого года, ориентирован на внедрение операционной среды; и информация о потоках цепочки поставок с минимальным набором/расширением. Централизованная форма повышает гибкость применения SBOM и учитывает потребности отечественных предприятий, выходящих за границу, в отношении соблюдения требований. Выходные форматы, поддерживаемые DSDX, включают DSDX, JSON и XML.
DSDX является продуктом общественной практики и находится на стадии активной разработки. Мы приветствуем отзывы и предложения команды проекта, и мы будем работать с нами над созданием первого стандартного формата SBOM в Китае.
3.2 Описание поля
Стандарт формата DSDX (v1.0) SBOM содержит следующие части:
04 Резюме
Короче говоря, SPDX, единственный, записанный в международный стандарт ISO, уделяет больше внимания описанию лицензионной информации на основе стандартизации, который может записывать больше информации о безопасности и услугах, имеет более высокую масштабируемость и основан на. Внутренняя практика Выпущенный DSDX представляет информацию об операционной среде и цепочке поставок, а также разбивает объекты описания на минимальные/расширенные наборы.
Экспортируйте стандартный формат SBOM по требованию с помощью OpenSCA.
OpenSCA поддерживает вывод файлов SBOM стандартного формата SPDX/CDX/DSDX и SWID, решая различные потребности за один раз, начиная с версии 3.0.0, а также добавлена возможность вывода зависимостей, уязвимостей и информации о лицензии через список SBOM;
Примеры использования
① Выходной список SBOM
opensca-cli -path ${project_path} -out output.dsdx
② Используйте список SBOM для вывода списка уязвимостей и лицензий.
opensca-cli -token ${token} -path ${sbomname.suffix} -out output.html
*Суффикс здесь может быть dsdx/dsdx.json/dsdx.xml/cdx.json/cdx.xml и т. д.
(Для точности введенный SBOM должен содержать информацию Purl, поэтому более рекомендуются CDX и DSDX)