很多软件都是建立在可重用的开源组件的基础之上 。但是使用开源的人员经常忽视相关的安全和许可风险。软件开发人员通常会从开源存储库中获取代码,以嵌入其公司的产品中,加快开发过程。虽然代码重用的效率提高和成本节省很明显,但企业很少定期检查开源代码以查找潜在的安全性和法律问题。很少有公司管理他们的开发人员使用开源。因此,他们仍未了解其开源风险和义务。
美国新思科技公司 (Synopsys, Nasdaq: SNPS)近日发布了《2019年开源安全和风险分析》(OSSRA)报告。该报告由新思科技网络安全研究中心(CyRC)制作,审查了由黑鸭审计服务团队执行的超过1,200个商业应用程序和库的审计结果。报告重点介绍了开源应用的趋势和模式,以及不安全的开源组件和许可证冲突的普遍性。
报告显示,现在企业面临着开源应用风险管理的挑战,这些难题在过去几年就已经有苗头了。然而,数据还表明现在已经达到了一个拐点,由于风险意识和商业软件组件分析解决方案成熟度的提高,许多企业提升了其管理开源风险的能力。
新思科技网络安全研究中心首席安全策略师Tim Mackey 表示:“开源在现代软件开发和部署中发挥着越来越重要的作用,但要实现其价值,企业需要从安全性和许可证合规的角度来理解和管理它如何影响其风险态势。2019年OSSRA报告提供了商业应用程序中开源风险管理的状况概览。报告表明现在仍然存在重大挑战,绝大多数的应用程序包含开源安全漏洞和许可证冲突,但同时也强调这些挑战是可以解决的,因为开源漏洞和许可证冲突的数量与去年相比有所下降。”
2019年OSSRA报告中最值得注意的开源风险趋势包括:
· 开源采用率大幅提升。2018年审计的代码库中96%包含开源组件,每个代码库中平均有298个开源组件,2017年则为257个。
· 开源许可证冲突可能会使知识产权面临风险。68%的代码库包含某种形式的开源许可证冲突,38%的代码库包含没有可识别许可证的开源组件。
· “废弃”组件的使用很常见。85%的代码库包含过去四年以上老式的组件或者过去两年没有开发的组件。如果一个组件处于非活跃状态或者无人维护,也就意味着没有人正在处理其潜在的漏洞。
· 许多组织未能修补或更新其开源组件。2018年黑鸭审计中确定的漏洞的平均年龄是6.6年,略高于2017年 。这表明补救措施没有显著改善。2018年扫描的代码库中有43%包含超过十年以上的漏洞。国家漏洞数据库(National Vulnerability Database)显示2018年增加了16,500个新漏洞,其明确的修补流程需要扩展以适应增加的披露的漏洞。
· 并非所有的漏洞都相同,但许多企业甚至没有解决那些风险最高的漏洞。超过40%的代码库包含至少一个高风险开源漏洞。
报告显示开源软件的使用本身并不是问题,实际上这对软件创新至关重要。但是未能积极主动地鉴别和管理任何与开源组件使用有关的安全和许可证风险,可能极具破坏性。虽然风险因素仍然存在,2019年OSSRA报告数据表明,在Equifax数据泄露之后,开源风险意识的提高和商业软件组件分析解决方案的成熟度已经取得了进展:
· 企业在管理开源安全漏洞方面正渐入佳境。2018年审计的代码库中有60%包含至少一个漏洞,相比2017年的78%已经改善不少。
· 总体而言,开源许可证合规性也得到了改善。2018年审计的代码库中有68%包含有许可证冲突的组件,2017年则为74%。
文章来源:安全牛