开源组件的日益普及并不能自动使其成为正确的选择

尽管它们很受欢迎,但仍无法盲目地信任拥有数百万个下载的开源软件包。

那是根据软件供应链报告,由Sonatype发布,该版本透露,虽然开源(OS)组件可以帮助提高软件的安全性,但并非全部创建。

该报告对36,000个OS项目团队进行了调查,该报告与IT Revolution的Gene Kim和Galois的Stephen Magill博士合作生产,以客观地检查OS项目团队和370万个OS发布。

它揭示了一个明确的事实 - 软件编写中使用的OS组件速率正在迅速扩展。

根据这些数据,2017年至2019年,OS软件组件的使用增加了75%。

自2018年初以来,供应量也有所增加 - 每天发布21,448个新的OS组件。

需求也有所增加。2018年的Java套件下载量增加了68%,同年JavaScript软件包下载增长了185%,从35亿亿增加到100亿。

Sonatype团队提出了一个假设 - 如果OS项目受欢迎,则可能具有更好的安全性,较少的依赖性跟踪,在他们背后拥有更大的团队,更快发布更新,使用连续集成,并得到由OS基金会或商业实体。

尽管他们的一些先入为主的想法在某种程度上被发现是正确的 - 例如,发现前20%的团队划分的团队可以更新其依赖性50%的速度 - 并非全部相关。

例如,操作系统组件的普及并不总是反映出它的安全性。

在2018年,使用流行语言JavaScript编码的包装中有51%具有已知的安全漏洞。

尽管JavaScript下载大量,但用户信任也逐渐减少 - 2018年,NPM调查在33,000名开发人员中,有83%的人对JavaScript的安全表示关注。

Sontaype副总裁Derek Weeks告诉Derek Weeks告诉Derek Weeks,“长期以来一直认为,在开源开发领域,‘有更多的眼球,所有的虫子都是浅的'。每日swbeplay2018官网ig

“换句话说,越受欢迎的开源组件是,它们可能拥有的错误或漏洞越少。

“我们在今年报告中对组件的普及的研究明显地表明,开发人员不应仅根据受欢迎程度选择组件。

“尽管许多最优质的开源组件很受欢迎,但并非所有流行的开源项目都会发布改进或经常补救漏洞。

“一些最受欢迎的组件可能平均需要200天或更长时间才能发布新的更新或补救已知的安全漏洞。”

考虑因素

速度不必以降低安全性为代价,尽管其他因素通常需要首先设置。

“我们发现,典范的开源项目计划从更高的代码提交,释放频率以及在某种程度上更大的开发团队中受益匪浅,” Weeks说。

他补充说:“我们还看到,托管软件供应链绝对更安全。实际上,当公司管理其开源软件供应链时,我们的使用量降低了55%。”

应该考虑以下事实:开源项目通常由志愿者团队处理,因此,他们可能没有时间或资源来定期维持其依赖性。

这个现实继续驱动着关于开源是否实际上比封闭源更安全的长期辩论的火焰。

“问题不再是关于开源或封闭来源更安全的。如今,[开放和关闭软件]都使用开源软件组件平均组装。”

他补充说:“……并非所有的开源软件组件都是平等的。”

Weeks不是专注于是否要建立开源或封闭的来源,而是建议开发人员应该寻找能够快速,定期更新的承诺的组件。

他们还应使用存储库管理器,更新依赖项,使用最新版本并自动化。

“最后一个想法,”周周说。简而言之,可以提供高质量,高速度安全性的典范软件开发实践并不罕见。

“如今,典范中有很多人出现,他们的做法是为他人而努力和实现的基准。”


有关的酸测试:开源与关闭