开源开发人员可在项目使用 OSV-Scanner,透过比对依赖项目和 OSV 漏洞资料库,找出项目的依赖项目中所存在的漏洞。
Google 推出免费工具 OSV-Scanner(https://github.com/google/osv-scanner),供开源开发人员可以更简单地存取和项目相关的漏洞资讯。
去年 Google 发布开源漏洞(Open Source Vulnerability)架构并且启动 OSV.dev 服务,完成第一个分散式开源漏洞数据库,官方解释,OSV 允许不同的开源生态系和漏洞资料库,能够以一种简单、精确且机器可读的格式发布和使用资讯。
而 OSV-Scanner 则是 OSV 资料库的下一步,这是由官方支援的前端,能够将项目的依赖项目列表,和影响项目的漏洞相关联。由于软件项目通常拥有大量的依赖项目,而每个依赖项目可能包含现有已知的漏洞,或是尚待发现的新漏洞,但因为依赖项目和版本太多,开发人员通常难以手动追踪,因此需要自动化来解决这项困难。
OSV-Scanner 会自动比对项目与其依赖项目和已知漏洞列表,并于存在修补程式或是更新时通知开发者,Google 提到,OSV-Scanner 能够生成可靠、高品质的漏洞资讯,以缩小开发人员软件套件列表和 OSV 资料库中的漏洞信息落差。
由于 OSV-Scanner 使用开源分散式 OSV.dev 数据库,因此官方提到,OSV-Scanner 与闭源数据库的扫瞄器相比更具优势,包括每个安全通报都是来自开放且权威的来源,所有人都可以提出改进建议,因此能够共同维护高品质资料库,而且OSV 格式以机器可读的格式,储存有关受影响的套件版本资讯,该格式能精确地对应到开发者的软件套件列表。
OSV-Scanner 会先分析清单、SBOM 并提交杂凑(hash)值,找到所有正在使用的传递(transitive)依赖项目,接著OSV-Scanner 会将该资讯和 OSV 数据库进行比对,以显示开发者项目相关的漏洞。同时 OSV-Scanner 还整合到 OpenSSF 计分卡漏洞检查,可将漏洞分析从项目的直接漏洞,扩及所有依赖项目的漏洞,代表采用 OpenSSF 计分卡的项目能够获得更全面的安全检查。
作者 | iThome 李建兴
翻译 | 刘天栋.Ted
编辑 | 张可芯
相关阅读 | Related Reading
开源码力圆桌文字稿
投身开源,需要持之以恒的热爱与贡献 —— Apache Spark Committer 姜逸坤