开源组件已成为当今许多软件应用程序的基础组成部分,这也使得其在安全性方面受到越来越严格的审查。根据开源管理专家 WhiteSource 发布的一份新报告,可知 2019 年公开的开源软件漏洞数增加到了 6000 多个,增速接近 50% 。庆幸的是,有超过 85% 的开源漏洞已被披露,且提供了相应的修复程序。
遗憾的是,开源软件的漏洞信息并没有集中在一处发布,而是分散在数百种资源中。有时索引的编制并不正确,导致搜索特定数据成为了一项艰巨的挑战。
根据 WhiteSource 的数据库,在国家漏洞数据库(NVD)之外报告的所有开源漏洞中,只有 29% 最终被登记在册。
此外研究人员比较了 2019 年漏洞排名前七的编程语言,然后将之与过去十年的数量进行了比较,结果发现历史基础最好的 C 语言占有最高的漏洞百分比。PHP 的相对漏洞数量也大幅增加,但没有迹象表明其流行度有同样的提升。尽管 Python 在开源社区中的普及率持续上升,但其漏洞百分比仍相对较低。
报告还考虑了通用漏洞评分系统(CVSS)的数据,是否是衡量补漏优先级的最佳标准。
过去几年中,CVSS 已进行了多次更新,以期达成为可对所有组织和行业提供支持的客观可衡量标准。
然而在此过程中,CVSS 也改变了高严重性漏洞的定义。这意味着在 CVSS v2 标准下被定为 7.6 的漏洞,在 CVSS v3.0 标准下可能被评为 9.8 。对于各个开源软件的开发团队来说,这意味着他们面临着更多的高严重性漏洞问题,导致现有超有 55% 的用户被高严重性或严重性问题所困扰。
报道作者总结道:列表中提及的开源项目漏洞,并不意味着其本质上是不安全的。作为用户,也应了解相关安全风险,并确保将开源依赖保持在最新状态。