用途:对软件物料清单(SBOM)做安全分析,识别所声明组件中的漏洞,服务于第三方风险管理和合规流程。核心原则是掌握软件供应链中的实际组成。
主要能力:
- SBOM 校验:识别 CycloneDX 或 SPDX 格式,检查版本号、组件列表、Package URLs(purl)等必填与推荐元素,输出校验问题报告(如缺失 purl 的组件无法扫描)。
- 安全扫描:调用 mcp_snyk_snyk_sbom_scan 进行漏洞分析,可用 severity_threshold 控制严重级别,可用 org 参数应用组织策略。
- 风险分析:汇总组件总数、已扫描/跳过数量、漏洞数量与严重级别分布,列出关键漏洞(组件、版本、CVE、CVSS、是否已知被利用)并给出风险评分。
- 修复指引:按优先级给出组件升级建议(当前版本、修复版本、说明),并提供可填充的供应商沟通模板。
- 内部 SBOM 生成:使用 Snyk CLI 生成后扫描。
必要用法:
- 扫描:mcp_snyk_snyk_sbom_scan(file="path/to/sbom.json", severity_threshold="medium")
- 组织范围扫描:mcp_snyk_snyk_sbom_scan(file="path/to/sbom.json", org="<org-id>", severity_threshold="high")
- 生成 CycloneDX:snyk sbom --format=cyclonedx1.5+json > sbom.json
- 生成 SPDX:snyk sbom --format=spdx2.3+json > sbom.json
支持格式:CycloneDX 1.4、1.5、1.6(.json);SPDX 2.3(.json)。
适用场景:接收或获取供应商 SBOM 后做准入评估、第三方组件风险盘点、合规检查与修复跟踪。
限制:组件需带 purl 才能被扫描;仅支持 JSON,不支持 XML;仅支持上述 CycloneDX/SPDX 版本;漏洞库查询需要网络连接;SBOM 为某一时点快照,更新后需重新扫描。