开源代码:下一波主要的网络攻击

2022-02-22 02:44:10

开源软件无处不在。它已经成为技术创新无与伦比的驱动力,因为使用它的组织没有';我们不必重新发明通用软件组件。

然而,开源软件的无处不在也带来了巨大的安全风险,因为它为(有意或无意地)向开源软件产品的消费者引入漏洞打开了大门。最近在广泛使用的Log4j代码库中解决主要漏洞的竞赛是迄今为止最大的迹象,表明必须解决开源软件环境中的风险。

对网络罪犯的开源呼吁开源攻击方法对坏人很有吸引力,因为它可以广泛且高效。攻击者可以使用各种方法来混淆对开放源代码项目所做的恶意更改,并且审查代码的安全性影响的严格程度在各个项目中可能存在很大差异。如果没有严格的控制措施来检测这些恶意更改,它们可能会在';我们已经在多家公司的软件中发布和使用。

对开放源代码的攻击可能在大小和影响的实体上有所不同。例如,去年7月,研究人员发现了九个影响三个开源项目的漏洞——EspoCRM、Pimcore和Akaunting——中小型企业经常利用这些漏洞。什么';此外,2017年Equifax数据泄露事件影响了1.47亿人的个人数据,原因是该组织存在漏洞#39;s的开源代码是一个明确的例子,说明了漏洞如何被坏人利用,并在整个过程中产生破坏性影响。

永不放弃CISA曾表示,数亿台设备可能受到Log4j漏洞的影响。鉴于这起事件的严重性,许多企业可能正在分析是否在未来的开发中利用开放源代码。然而,完全放弃开源不是';这不现实。所有现代软件都是用开源组件构建的,而在没有开源的情况下重建这些组件将需要大量的时间和金钱投资,以生产哪怕是较小的应用程序。全球60%以上的网站运行在Apache和Nginx服务器上,据报道,90%的IT领导者定期使用企业开源代码。

测试和保护您的软件,而不是避免开源,一个更现实的方法是安全和软件团队共同开发测试应用程序和软件组件的策略和流程。组织应将其视为一个由三部分组成的过程。它需要扫描和测试代码,建立一个明确的流程,在漏洞出现时解决和修复漏洞,并创建一个内部政策,在其中为解决安全问题制定规则。

当涉及到使用工具测试开源环境的弹性时,静态代码分析是很好的第一步。不过,组织必须记住,这只是测试的第一层。静态分析是指在实际软件应用程序或程序上线之前分析源代码,并解决任何发现的漏洞。然而,静态分析无法检测到所有可能嵌入到开源代码中的恶意威胁。下一步应该是在沙箱环境中进行额外的测试。严格的代码审查、动态代码分析和单元测试是可以利用的其他方法。(动态分析是指在软件程序当前运行时对其进行检查,以识别漏洞。)

扫描完成后,组织必须有一个明确的流程来解决任何发现的漏洞。开发人员可能会发现自己正赶上发布截止日期,或者软件补丁可能需要重构整个程序,并对时间线造成压力。这个过程应该帮助开发者解决保护组织的艰难选择#39;通过给出解决漏洞和缓解问题的明确下一步措施,提升安全性。

政策变更步骤应创建一个记录在案的计划,说明如何制定所有决策,以及哪些利益相关者应参与整个过程。此外,组织可以对其开源组件实施多种控制,例如认证和认可计划。然而,请记住,这将增加额外的间接成本,并减缓开源项目的开发。

保护开放源代码免受未来的攻击整个行业都注意到需要进一步保护开放源代码。Linux基金会于十月宣布,它与其他行业领袖一起募集了1000万美元,以识别和修复开源软件中的网络安全漏洞,并开发改进的工具、培训、研究和漏洞披露实践。除了在全行业范围内努力保护基于开放源代码构建的软件免受网络威胁之外,各组织还必须对其防御战略采取内部积极主动的方法。这应该包括为他们自己的代码和他们所依赖的开源代码实现测试和控制过程。组织还必须制定内部政策和指导方针,识别使用开源软件的风险,并确定用于管理该风险的控制措施。这样做将使他们能够继续利用开源代码的好处,同时创造一个能够抵御未来攻击的环境。

了解最新的网络安全威胁、新发现的漏洞、数据泄露信息和新兴趋势。每天或每周发送到您的电子邮件收件箱。

订阅