bigdawgsfootball/SBOM-Researcher
GitHub: bigdawgsfootball/SBOM-Researcher
基于 PowerShell 的 SBOM 漏洞查询工具,通过调用 Google OSV 数据库对软件物料清单中的组件进行漏洞与许可证风险分析,并生成可纳入流水线决策的多种格式报告。
Stars: 5 | Forks: 1
# SBOM-Researcher
[](https://scorecard.dev/viewer/?uri=github.com/bigdawgsfootball/SBOM-Researcher)
[](https://www.bestpractices.dev/projects/9346)
## 描述
***更新** CVSS 4.0 评分已验证且功能完整。*
此脚本接受指向 SBOM 或 SBOM 目录的路径,提取引用的每个
包,并查询由 Google 管理的 OSV(开源漏洞)数据库。
然后将报告每个包已发布的漏洞列表,如果提供了 CVSS 评分,
还会提供指向详述每个漏洞 CVSS 评分页面的链接。
报告中的每个漏洞将列出组件名称和版本,以及包含以下内容的列表:漏洞名称、漏洞数据库来源、摘要、详情、修复版本(如有)、CVSS 评分可视化工具链接、计算出的 CVSS 评分、每项 CVSS 评分组成的细分、CVSS 评分严重程度的计算,以及如果 -PrintLicenseInfo 参数为 $true,则显示每个组件中发现的每个超过 -minScore 参数的漏洞的任何许可证信息。
报告中每个组件的汇总摘要将指出是否存在一个可以解决所有漏洞的版本供您升级。
报告末尾的汇总摘要可以(如果提供了命令行选项)指出所有发现的开源许可证的评估风险等级。
所有上述信息将包含在 _ProjectName__report.txt 输出文件中。还会创建另外 2 个文件,其中包含所发现漏洞的 JSON 表示以及它们所在的 SBOM 文件的映射。这些设计用于流水线操作中以支持决策关卡。
目前已针对 CycloneDX 和 SPDX 格式的 SBOM 进行了合理测试。
您的 SBOMPath 可以包含 CycloneDX 和 SPDX SBOM 的混合。
CVSS v4.0、v3.0 和 3.1 已完全支持,并针对 FIRST.org 计算器进行了验证。3.x 和 4.0 转换函数的行为一致,即在无效向量上抛出异常。
## 用法
SBOMResearcher -SBOMPath "_{SBOM 文件或目录的路径}_" -wrkDir
"_{输出文件的目录路径}_" [_可选_]-ListAll true/false [_可选_]-PrintLicenseInfo true/false -minScore decimal
最好让 -wrkDir 路径与 -SBOMPath 不同
可选参数 -ListAll 会将评估的每个组件打印到输出文件中,即使在其中未发现漏洞。如果未包含,默认仅打印发现漏洞超过 -minScore 参数值的组件。
minScore 参数将设置实际报告的漏洞级别。只想看高/严重级别?将 7.0 作为 minScore 传递。想看全部?将 0 作为 minScore 传递。
## 最佳实践执行
SBOM-Researcher 根据 PSScriptAnalyzer 的默认规则集进行评估。
所有规则均被执行。
帮助文档仅限于用法部分和代码中的注释。
针对 Convert-CVSS3StringToBaseScore、Convert-CVSS4StringToBaseScore、Get-HighVersion 和 PrintLicenses 函数实施了 Pester 测试。
## 项目状态
正在积极开发中
标签:AI合规, CVSS评分, CycloneDX, DevSecOps, Google OSV, GPT, Libemu, Libemu, Libemu, OSV, Python, SBOM, SPDX, Vercel, 上游代理, 依赖安全, 开源漏洞, 文档安全, 无后门, 漏洞管理, 硬件无关, 许可证分析, 跌倒检测, 软件物料清单