漏洞仍然是可以预防的
几乎所有(96%)的漏洞仍然是可以避免的。2023年本可以避免21亿次具有已知漏洞的OSS下载,因为有了更好的修复版本——与2022年的百分比完全相同。对于每一次非优化组件升级,通常都有10个高级版本可用。
只有11%的开放源码项目得到“积极维护”。Sonatype分析了四个主要生态系统的1176407个开源项目。这一发现表明,在跟踪依赖关系随时间推移的健康状况时,消费者保持持续警惕的重要性。
次优的开源消费习惯是开源风险的根本原因,这与公众经常将安全风险与开源维护者联系在一起的言论相反。平均而言,维护人员会及时处理和解决问题。
Sonatype的首席技术官布赖恩·福克斯说:“很多维护员都非常勤奋——大型科技公司不遗余力地雇佣有才华的人来维护他们所依赖的图书馆。”“我们的行业需要将努力引向正确的地方。事实上,几乎所有下载的组件都有一个已知漏洞的修复程序,这一事实告诉我们,当务之急应该是支持开发人员成为更好的决策者,并让他们能够使用正确的工具。其目标是帮助开发人员更有意识地从拥有最多维护人员和最健康的贡献者生态系统的项目中下载开源软件。这不仅将创建更安全的软件,而且每年还可以收回近2周浪费的开发人员时间。
感受到的安全感与现实脱节
在软件供应链攻击不断增加的情况下,软件开发中感知到的安全性与现实之间也持续存在脱节:
企业认为他们的软件供应链处于控制之下:67%的受访者相信他们的应用程序不依赖已知的易受攻击的库。然而,近10%的受访者报告称,他们的企业在过去12个月中因开源漏洞而存在安全漏洞。
许多企业对开源漏洞的认识和缓解缺乏紧迫性:报告发现,39%的企业在一到七天内发现漏洞;29%的企业需要一周以上的时间才能发现漏洞,28%的企业在一天内发现漏洞;在缓解方面,36.2%的受访者需要一周以上的时间来缓解漏洞。
开发人员在推动进步方面发挥着关键作用
持续维护的开放源码项目在关键软件安全最佳实践方面的表现优于它们的同行。与维护较少的库相比,维护一致的项目往往得分:
- SAST高出5.9倍。
- 签名版本的性能提高了5.4倍。
- 依赖关系更新工具的性能提高了5.1倍。
- 代码审查速度提高3.6倍。
- 分支机构保护能力提高3.8倍。
优化的依赖关系管理可节省时间、资金并降低安全风险:与优化升级相结合,一年内误报减少25%可为您在解决组件升级和高风险漏洞产生方面节省两倍的时间。
福克斯补充道:“有影响力的变革需要明确的方向。”无论是好是坏,今天的软件企业面临着解决这些问题的压倒性选择--从大量的框架到每周的政府指导,等等。所有这些选择都已经成熟,可以造成瘫痪,这使得它很难开始。
提高效率和安全态势
在软件供应链漏洞激增的情况下,有迹象表明,开发人员正在采取措施提高效率和安全态势。报告显示,在不到一年的时间里,AI/ML组件在软件开发中的使用激增了135%,这主要是因为该技术为软件开发人员提供了巨大的效率,此外AI/ML组件可以如此快速地集成到软件开发工作流中。也就是说,开发人员和企业在开发自己的AI产品方面面临着巨大的挑战。
Sonatype负责产品创新的副总裁斯蒂芬·马吉尔表示:“选择合适的AI/ML工具真的很难——有数十万种选择,而选择这些工具的重担落在了数据科学家身上。”“AI/ML也带来了大量新的安全和许可问题,更不用说实施付费服务的巨额成本了。由于LLM模型的很大一部分是开源的,这意味着与开源相关的所有固有的安全担忧也将对AI产生重要影响。