软件供应链的攻击在三年内猛增742%

中科天齐软件源代码安全检测中心

共 2233字,需浏览 5分钟

 ·

2022-10-20 11:20

根据软件供应链管理公司Sonatype的一份新报告,涉及恶意第三方组件的供应链攻击记录数量在过去一年增加了633%,目前已知的案例超过8.8万起。与此同时,软件组件从它们自己的依赖继承而来的传递性漏洞实例也达到了前所未有的水平,并困扰着三分之二的开源库。

在发布的《软件供应链状况》报告中表示:“依赖关系的网络化性质突出了对这些复杂供应链的可见性和意识的重要性。”“这些依赖会影响我们的软件,因此了解它们的来源对漏洞响应至关重要。许多组织没有所需的可见性,因此在2022年夏天之后仍在继续使用Log4Shell的事件响应程序。

Log4Shell是2021年11月在Log4j中发现的一个关键漏洞。Log4j是一个广泛流行的开源Java库,用于记录日志,并被应用在数百万企业应用程序和软件产品中,通常作为间接依赖项。根据Sonatype的监测,截至2022年8月,固定版本Log4j的采用率约为65%。此外,这甚至没有考虑到一个事实,即Log4Shell漏洞起源于一个名为JndiManager的Java类,它是Log4j-core的一部分,但也被783个其他项目借用,现在在超过19,000多个软件组件中发现。

Log4Shell突出了开源软件生态系统中存在的固有风险,这是现代软件开发的核心以及正确管理这些风险的必要性。同时这使得私人组织、软件存储库管理人员、Linux基金会和政府机构发起几项保护软件供应链的倡议。然而,在开源供应链管理方面,大多数组织还远远没有达到他们需要达到的水平。

开源消费持续增长

从顶级组件存储库——Maven Central (Java)、npm (JavaScript)、PyPi (Python)和NuGet (. net)——下载的包的平均年增长率为33%。这低于前几年,例如2021年73%的增长,但所有存储库的组件下载数量已经超过2021年的数字,总计超过3万亿。仅npm知识库今年提供的下载量就超过2021 年所有四个存储库的下载量。

开源消费率的下降并不一定是由于用户实施了更严格的开源采购和管理政策,而是考虑到这些不同编程语言的生态系统已经达到的规模以及它们添加新项目和发布的速度,这是正常的。

Sonatype总结道:“尽管增长速度正在放缓,但增长的绝对规模仍在前一年的基础上继续复合。”“开源应用的步伐在短时间内没有任何放缓的迹象。”

供应链攻击类型已经多样化

截至去年年底,Sonatype追踪了大约1.2万起已知的恶意供应链攻击事件,但现在这一数字已超过8.8万起,同比增长633%。该公司还发现了97334个以各种方式分发的恶意包。

恶意包增长的主要原因之一是一种名为依赖混淆的攻击技术,该技术于2021年2月由安全研究人员公开披露,自那以来得到了广泛采用。该技术利用大多数包管理客户端的行为,配置为在公共社区存储库和内部存储库中搜索包。

另一种众所周知的大规模攻击是typosquatting和brandjacking。typosquatting指的是攻击者注册恶意包,其名称与一些流行和广泛使用的包的名称相似。这是一种被动攻击,依赖于开发人员在构建脚本或命令中输入包名时犯的打字错误。

Brandjacking是类似的,但针对的是其他包维护者,希望他们在自己的组件中包含一个被劫持的或拼写错误的包作为依赖项。当合法包的维护者将所有权转让给其他人时,或者当他们停止开发该包并删除它,旧的名称变为可用时,也会发生这种情况。

恶意代码注入是另一种更具针对性的技术,涉及攻击者破坏开发人员的系统或代码存储库,并在他们不知情的情况下将恶意代码注入其包中。当包维护者授予多方提交对其代码存储库的访问权限,而这些参与方有恶意意图或受到损害时,也会发生这种情况。

公司对其开源实践过于自信

Sonatype对662名企业工程专业人员进行了一项调查,并询问了40个关于他们使用开源组件、依赖管理、治理、审批流程和工具的问题。大多数反馈都表明供应链管理水平低于产生高质量结果的要求。

得分最高的是修复和应用程序清单类别。例如,68%的受访者表示,他们确信他们的应用程序没有使用已知的易受攻击的库,84%的受访者表示他们仔细检查了他们使用的开源组件的安全历史记录。然而,Sonatype对随机选择的55000个企业应用程序的扫描显示,其中68%的应用程序存在已知的漏洞。

在发生了一系列备受瞩目的安全漏洞之后,与去年这个时候相比,今天组织更多地关注对软件供应链的保护。几种度量标准可以用来判断开源项目的安全实践:如组织是否确保他们正在修复其最关键应用程序中的漏洞;是否同时实施 DevSecOps 最佳实践,使用静态代码分析工具,避免危险的编码实践,在合并新代码前执行代码检查,声明并固定依赖关系等。这将确保尽可能少的漏洞进入下一代应用程序。


了解更多可参考:

https://www.sonatype.com/state-of-the-software-supply-chain/introduction


来源:

https://www.csoonline.com/article/3677228/supply-chain-attacks-increased-over-600-this-year-and-companies-are-falling-behind.html

浏览 43
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报