开源已经逐渐成为新一代软件开发模式,能有效推动产品快速迭代。但是开源风险的问题比较复杂,包括知识产权及合规风险,还有安全漏洞等,而且完善的开源治理体系还尚未构建起来。值得庆幸的是,现在有一些安全测试工具可以降低开源使用的风险。

 

新思科技(Synopsys, Inc.,Nasdaq: SNPS)宣布发布《2020 年 DevSecOps 实践和开源管理报告》。该报告由新思科技网络安全研究中心(CyRC)总结制作,采访了 1,500 名从事网络安全、软件开发、软件工程和 Web 开发的 IT 专业人员。该报告探讨了全球企业用于解决开源漏洞管理的策略以及日益严重的商业代码中过时或弃用的开源组件问题。

 

开源在当今的软件生态系统中扮演着至关重要的角色。绝大多数现代代码库都包含开源组件,开源通常占整个代码的 70%或更多。然而,开源使用增长的同时,不受管理的开源带来的安全风险日益严重。实际上,《2020 年开源安全和风险分析》报告(OSSRA)指出经过新思科技审计的代码库中,75%包含具有已知安全漏洞的开源组件。为了应对这种情况,受访者在审查新的开源代码组件时将识别已知的安全漏洞作为首要标准。

 

新思科技网络安全研究中心首席安全策略师 Tim Mackey 表示:“很明显,未修补的漏洞是造成开发人员困扰以及最终导致业务风险的主要原因。《2020 年 DevSecOps 实践和开源管理报告》强调了企业如何竭力有效地追踪和管理其开源风险。”

 

Tim Mackey 接着说:“超过一半(51%)的受访者表示他们需要两至三周的时间来应用开源补丁,这可能与以下的情况有关系,仅仅 38%的受访者使用自动的软件组件分析(SCA)工具来确定使用了哪些开源组件以及何时发布更新。其余的组织可能采用手动的操作流程来管理开源,这些可能会拖慢开发和运营团队的速度,迫使他们在平均每天发布数十个新的安全披露的环境下来追赶安全。”

 

《2020 年 DevSecOps 实践和开源管理报告》中值得注意的其他要点包括:

 

  • DevSecOps 在全球范围内迅速增长。总计 63%的受访者表示他们正在将一些 DevSecOps 活动融入其软件开发计划中。

 

  • 应用程序安全测试(AST)工具没有被普遍采用。从受访者对调查问卷的回答可以看出,其实并不缺乏应用程序安全测试的工具和技术。然而,即使使用率很高的 AST 工具也只有不到一半的受访者在使用。

 

  • 媒体在开源风险管理中发挥着重要的作用。46%的受访者指出,媒体报道促使他们对开源使用情况实行更加严格的管控。

 

  • 47%的受访者根据他们所使用的开源组件的时间来定义标准。开源社区中一个日益严重的问题是项目的可持续性。新思科技 2020 OSSRA 报告显示,在 2019 年被审计的代码库中,91%的代码库包含的组件已经过期四年以上或过去两年中没有开发活动。部署过期的代码会增加安全风险,包括开源组件被劫持的风险。如 2018 年发生的一个事件:event-stream 组件被注入恶意代码,目的是窃取 Copay 钱包中的比特币。