开源代码引发的下一波网络攻击开源软件无处不在。由于使用开源软件的组织不必为通用软件组件重新发明轮子,它已成为技术创新的主要驱动力。然而,开源软件的无处不在也带来了重大的安全风险,因为它为使用开源软件产品的消费者带来了漏洞,无论是有意还是无意。最近许多组织响应的广泛使用的Log4j代码库中的严重漏洞是需要解决开源软件环境中的风险的最明显的例子。开源对网络犯罪分子的吸引力开源攻击方法因其广泛性和有效性而对犯罪分子具有吸引力。攻击者可以使用多种方法来混淆对开源项目的恶意更改,并且针对安全漏洞审计代码的严格程度因项目而异。如果没有严格的控制来检测这些恶意更改,它们可能会被忽视,直到它们被分发并添加到许多公司的软件中。针对开放源代码的攻击在规模和受影响的实体方面各不相同。例如,2021年7月,研究人员发现了9个漏洞,影响了三个开源项目:EspoCRM、Pimcore和Akaunting,这三个项目经常被中小企业使用。此外,2017年Equifax数据泄露事件清楚地表明了漏洞是如何被犯罪分子利用的,并在此过程中造成了毁灭性的影响。由于该组织的开源代码存在漏洞,此次违规影响了1.47亿人的个人数据。永不放弃开源CISA表示,数亿台设备可能会受到Log4j漏洞的影响。鉴于此次事件的严重性,很多商家可能都在分析是否要使用开源代码进行未来的发展。然而,完全放弃开源是不切实际的。所有现代软件都是由开源组件构建的,在没有开源的情况下重建这些组件,即使是小型应用程序,也需要大量的时间和金钱投资。全球超过60%的网站运行在Apache和Nginx服务器上,据说90%的IT领导者经常使用企业开源代码。一种更实用的测试和保护软件的方法是让安全团队和软件团队共同合作,制定用于测试应用程序和软件组件的策略和程序,而不是回避开源软件。组织应该强调涉及这三个部分的流程:需要扫描和测试代码,建立明确的流程来解决和修复出现的漏洞,以及制定内部政策(设置规则来解决安全问题)。在使用工具测试开源环境的弹性时,静态代码分析是很好的第一步。不过,组织必须记住:这只是第一次测试。静态分析是指在实际程序或应用软件上线之前分析源代码并解决任何发现的漏洞。然而,静态分析无法检测出所有可能嵌入开源代码中的恶意威胁。下一步应该是在沙盒环境中进行额外的测试。严格的代码审查、动态代码分析和单元测试是其他可以利用的方法。动态分析是指在软件程序运行时对其进行检查以识别漏洞。扫描完成后,组织有一个定义的流程来解决发现的任何漏洞。开发人员可能会发现发布截止日期迫在眉睫,或者软件补丁可能需要重构整个程序,时间很紧。这个过程应该给出明确的后续步骤来解决漏洞和缓解问题,帮助开发人员做出艰难的选择以确保他们的组织安全。政策变更步骤应该有一份书面计划,概述所有未来决策的制定方式以及整个过程中应涉及哪些利益相关者。此外,组织可以对开源组件实施多种控制,例如证书和认证程序。但是请记住,这会增加额外的管理费用并减慢开源项目的开发速度。保护开源免受未来攻击业界关注进一步保护开源代码的需求。Linux基金会于2021年10月宣布,它与其他行业领导者一起筹集了1000万美元,用于识别和修复开源软件中的网络安全漏洞,并开发改进的工具、培训、研究和漏洞披露实践。除了全行业努力保护基于开源代码构建的软件免受网络威胁外,组织还必须在内部采取主动防御策略。这应该包括对他们自己的代码和他们所依赖的开源代码实施测试和控制程序。组织还必须制定内部政策和指南,以确定使用开源软件带来的风险,并确定用于管理该风险的控制措施。这样做将使组织能够继续利用开源代码的优势,同时创建一个能够抵御未来攻击的环境。原标题:开源代码:网络攻击的下一波主要浪潮,作者:JamesCarder
