首页 › weekly › SBOM神器:给软件办张护照

本期思路:三天前,一条新规开始收网

2026年9月11日,欧盟《网络弹性法案》(CRA)的漏洞报告义务正式生效——从这一天起,在欧盟卖“带数字元件产品”的厂商,发现被积极利用的漏洞或严重安全事件后,必须在24小时内向ENISA早期预警、72小时内提交完整报告。这还只是前菜:2027年12月11日,CRA主体合规义务全面落地,其中附件一明确要求厂商提供“以常用格式编写、至少覆盖顶层依赖”的SBOM(软件物料清单)。翻译成人话:你的软件要从哪买的零件、装了什么库、有什么已知漏洞,得能随时拿出来给监管看。

这不是欧洲人自娱自乐。美国2021年 soleil行政令14028早就把SBOM写进了联邦采购要求;2024年xutils后门事件(恶意维护者混入xz项目三年,差点进全球Linux发行版)更是给全行业上了一课:连最底层的基础库都可能被下毒,没有物料清单你根本不知道自己“吃了什么”。

本期按一条完整的流水线挖出8个仓库:生成SBOM → 扫漏洞 → 托管监控 → 质量打分,从万星爆款到几百星小仓库都有。对独立开发者来说,这里藏着一门刚开闸的合规生意——中小软件厂商现在最缺的就是“帮我过CRA”的人。


1. aquasecurity/trivy —— 一条命令扫一切的“体检机”

aquasecurity/trivy|Star 约2.5万|Aqua Security 主力维护,发版频繁

一句话定位:容器与代码的“全能体检机”,顺手就能产出CRA要的SBOM。

痛点很直接:想在CI里查镜像漏洞、查IaC配置错误、查硬编码密钥、再生成一份依赖清单,以前要拼四五个工具。Trivy用一条trivy image nginx:latest全包了:OS包漏洞、Python/Go/npm等语言依赖漏洞、Terraform和K8s清单的配置错误、镜像里的明文密钥、开源许可证,一次扫完。--format cyclonedx参数直接吐出CycloneDX格式的SBOM——正好是CRA认可的“常用格式”。它还能反过来当扫描引擎:喂给它一份现成的SBOM(trivy sbom sbom.json)就能直接出漏洞报告。

架构上是纯Go单二进制,无外部依赖,GitHub Actions、Kubernetes Operator、Helm全有官方集成,进CI几乎零成本。

上手难度:⭐⭐

适用人群:所有要交付容器化产品的团队。变现角度,它是最好的“引流入口”——先帮客户免费扫出问题,再用后面几件工具做持续合规,咨询顾问的标配起手式。


2. anchore/syft —— SBOM专用生成器,生态兼容之王

anchore/syft|Star 约7千|Anchore 开源旗舰,持续活跃

一句话定位:只做一件事但做到极致——把镜像和目录里的每个零件都数出来。

SBOM质量的上限取决于“数零件”的能力。Syft在这件事上是公认天花板:除了apk/dpkg/rpm等系统包管理器,它能解析Go modules、npm/yarn/pnpm锁文件、Python的poetry/pipenv、Java嵌套jar、Ruby gems、Rust Cargo.lock等几十种生态,连没装Docker的环境都能直接从OCI Registry拉镜像分析。输出SPDX和CycloneDX双格式,syft app:latest -o cyclonedx-json=sbom.json一条命令完事。

真正的架构亮点:Syft本身是个Go库,Anchore自家漏洞扫描器Grype直接import它——所以“Syft生成、Grype扫描”成了开源圈的事实标准组合,类似“拍片”和“读片”的分工。

上手难度:⭐⭐

适用人群:要给客户交付SBOM文件的软件供应商、做容器安全产品的二次开发者(拿它当库嵌入自己的产品,省两年开发量)。商业上,基于Syft+Grype给中小ISV做“CRA合规流水线”搭建服务,是门槛最低的切入方式。


3. anchore/grype —— 拿着CVE清单对号入座

anchore/grype|Star 约9千|与Syft同步发版

一句话定位:读完物料清单,立刻告诉你哪批“零件”有召回通告。

Grype的输入就是Syft的输出:grype sbom:./sbom.json,或者直接grype nginx:latest(内部自动先调Syft)。它的漏洞库聚合了NVD、GitHub Security Advisories、OSV、各大发行版安全通告,数据每日更新。最实用的是对VEX的支持——CRA报告义务里反复提到的VEX(漏洞利用可能性交换),Grype允许你给某个漏洞标记“误报/不受影响”,后续扫描自动带出结论,不用每轮CI重复人工排查同一个误报。这对动辄几百条告警的真实项目是救命功能。

上手难度:⭐⭐

适用人群:和Syft打包使用。两者组合是“零成本起步SBOM合规”的最短路径,也是给客户写合规方案时的默认底座。


4. google/osv-scanner —— 谷歌出品,从lockfile查起

google/osv-scanner|Star 约6千|Google 团队维护

一句话定位:直接拿项目里的锁文件去OSV.dev数据库对号,开发阶段就拦住毒零件。

前面的工具都偏“镜像/交付物”视角,osv-scanner偏“源码”视角:递归扫目录,自动识别各种lockfile(package-lock.json、go.sum、Cargo.lock、poetry.lock……),逐条去OSV.dev比对。OSV.dev是谷歌牵头的开源漏洞数据库,聚合了NVD、GitHub Advisories、PyPA、RustSec、Go官方漏洞库等十几路数据源——相当于查一次等于查了一打数据库。

两个功能让它特别适合进CI:一是可达性分析,对Go项目做静态调用分析,把“依赖里有漏洞但你的代码根本没调用到”的那部分自动降级,误报噪音大幅下降;二是SARIF输出,扫出的结果直接挂在GitHub PR的代码检查里。还有离线模式,内网环境也能跑。

上手难度:⭐⭐

适用人群:应用开发团队“左移”防线的首选。它背后是OSV.dev这个数据基础设施——往上游看,给OSV生态做行业数据源对接、给私有漏洞库做OSV格式桥接,都是细分方向的活儿。


5. DependencyTrack/dependency-track —— 企业级SBOM托管中枢

DependencyTrack/dependency-track|Star 约4千|OWASP 旗下项目

一句话定位:SBOM不是交完就扔的作业,这个平台让每份清单持续“活”在监控里。

前四个工具解决“生成和扫一次”,但CRA的真正要求是持续:新CVE披露时,你要在24小时内知道自己受不受影响。Dependency-Track就是干这个的——CI里每构建一次就把新SBOM推上去,平台留存所有版本的组件清单,后台持续对接NVD、GitHub Advisories、OSV等漏洞源;任何一个新CVE披露,秒级算出“命中哪几个项目、哪些版本”,策略引擎按许可证、漏洞等级、组件年龄自动判定合规/违规,通知直接推到Slack和工单。REST API齐全,Kubernetes一键部署,OWASP出品且已被大量金融、车企用于真实合规。

这是本期唯一的“平台型”项目,也是离企业预算最近的一个:围绕它做托管部署、策略模板、审计报告导出的实施服务商,在CRA大限前会持续缺货。

上手难度:⭐⭐⭐⭐

适用人群:交付软件产品的企业(尤其出海欧盟的)、想做合规托管服务的团队。


6. CycloneDX/cdxgen —— 语言覆盖最广的清单员

CycloneDX/cdxgen|Star 约2千余|CycloneDX 官方项目,高频迭代

一句话定位:你那门小众语言的依赖,它多半也数得清。

cdxgen是CycloneDX官方出品的生成器,最大的卖点是语言矩阵:除主流的JS/Java/Python/Go/Rust外,连Dart、Elixir、Haskell、Swift、C/C++这些“工具链地狱”都有对应解析逻辑,还支持直接分析容器镜像。除了常规SBOM,它还能产出OBOM(操作系统包清单)、SaaSBOM(服务接口清单)等变体——SaaSBOM对要申报“服务边界”的CRA合规特别有用。单文件可执行版发布在GitHub Release,Node环境都不用装。

OWASP的依赖扫描器dep-scan底层就用它,工程成熟度有背书。对比Syft:容器场景Syft更强,多语言应用仓库场景cdxgen覆盖面更广,两者在流水线里经常并存。

上手难度:⭐⭐

适用人群:技术栈庞杂的团队、做代码托管平台集成的开发者(生成-上传-存证一体化是清晰的二开方向)。


7. guacsec/guac —— 把整个软件供应链画成一张图

guacsec/guac|Star 约1.5千|Google 与 Kusari 共建,OpenSSF 生态项目

一句话定位:SBOM是一份份孤立的清单,GUAC把它们拼成一张可查询的“供应链血缘图谱”。

想象xz后门重演时你最想问的问题:“我所有系统里,谁上游引了恶意库?攻击路径要经过哪几层?”单份SBOM答不了,一千份SBOM的关联才能答。GUAC(Graph for Understanding Artifact Composition)把海量SBOM、SLSA构建证明、OSV漏洞通告灌进图数据库,对外提供GraphQL接口——查“某个包的全部下游受影响方”“两个制品之间的依赖路径”变成一行查询。它由Google和供应链安全创业公司Kusari联合发起,已进入OpenSSF生态,Helm可以一键装进Kubernetes。

定位偏基础设施,实验性质明显,不适合直接上生产,但方向代表了行业终局:合规不是存文件,是建图谱。

上手难度:⭐⭐⭐⭐⭐

适用人群:大型平台方、安全研究方向。最被低估的价值在于:国内还没有成气候的“软件供应链图谱”类开源底座,这里有现成架构可借鉴。


8. interlynk-io/sbomqs —— 给SBOM本身打分的裁判

interlynk-io/sbomqs|Star 约7百|Interlynk 团队出品,小而快

一句话定位:SBOM也有敷衍了事的——这条命令给清单本身打个分。

本期最小而美的一个。市面上SBOM的最大坑不是没有,而是烂:只有顶层依赖、字段空空、版本缺失,监管收了等于没收。sbomqs一条sitemaps score sbom.json给出0-10分,从语义丰富度、规范符合度、工具兼容性等维度逐项扣分,精确告诉你差在哪;还内置NTIA最小要素、BSI TR-03183等监管档案的合规检查模式——CRA要求“至少覆盖顶层依赖”,它直接帮你验。SPDX和CycloneDX通吃,单二进制,几秒出结果。

作者Interlynk是一家专做SBOM管理的小型创业公司,同门还有合并SBOM的sbomasm,工具链思路非常“卖水人”:别人淘金,它卖质量检验。

上手难度:⭐

适用人群:所有要收发SBOM的人——交付前自检、验收供应商清单、入库前把关。作为几百星的小仓库,它是“检查别人的作业”这个细分里最顺手的免费工具。


本期横向对比

仓库 角色 Star(约数) 上手难度 适用场景
trivy 生成+扫描一体 2.5万 ⭐⭐ CI全量体检
syft SBOM生成 7千 ⭐⭐ 容器/文件清单
grype 漏洞扫描 9千 ⭐⭐ 与syft配套
osv-scanner 源码扫描 6千 ⭐⭐ 开发阶段左移
dependency-track 托管平台 4千 ⭐⭐⭐⭐ 企业持续合规
cdxgen SBOM生成 2千余 ⭐⭐ 多语言仓库
guac 供应链图谱 1.5千 ⭐⭐⭐⭐⭐ 平台级血缘分析
sbomqs 质量打分 7百 ⭐ 清单验收把关

Star数为写作时约数,以GitHub仓库页面为准。

流水线全景:

flowchart TD
    A["代码与镜像"] --> B["Syft"]
    A --> C["cdxgen"]
    A --> D["Trivy"]
    B --> E["SBOM清单"]
    C --> E
    D --> E
    E --> F["Grype"]
    E --> G["osv-scanner"]
    E --> H["sbomqs"]
    F --> I["Dependency-Track"]
    G --> I
    H --> I
    I --> J["GUAC 图谱"]
    I --> K["CRA 合规报告"]

工具家族速览:

mindmap
  root((SBOM工具链))
    生成
      Syft
      cdxgen
      Trivy
    扫描
      Grype
      osv-scanner
    平台与图谱
      Dependency-Track
      GUAC
    质量评分
      sbomqs

本期之最

距离CRA主体义务落地还有15个月,SBOM这条流水线,越早搭越便宜。

参考来源

  1. Regulation (EU) 2024/2847(Cyber Resilience Act)官方文本 — CRA生效日期、报告义务与SBOM要求的权威出处
  2. 欧盟委员会CRA政策页 — 官方时间表与适用范围概述
  3. OSV.dev — osv-scanner与Dependency-Track依赖的开源漏洞数据库
  4. CycloneDX — CRA认可的SBOM常用格式标准官网
  5. OpenSSF — GUAC等供应链安全项目的生态归属

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入