Checkmarx警告:又一未知的攻击群体在通过NPM包进行软件供应链攻击

admin 2024年8月7日22:37:11评论17 views字数 1672阅读5分34秒阅读模式

点击蓝字 关注我们

(本文为国外技术文章翻译,加上译者个人观点;英文原文点击“阅读原文”)
应用安全测试公司Checkmarx Ltd.的研究人员今天详细介绍了一种未知威胁行为,即攻击者利用NPM包攻击研发人员,以窃取源代码和机密信息。
这类威胁的攻击者自2021年以来一直保持活跃并散布恶意npm包,但直到现在才被发现;而这些恶意软件包的设计目的则是从受害者的计算机中窃取诸如源代码和配置文件等敏感数据。
威胁来源使用的每个恶意软件包都被设计成在安装时自动执行。每个恶意npm包的攻击代码包含在三个文件中——package.json、preinstall.js和index.js。
该攻击的流程如下:

01

后门植入

在安装恶意软件包时,package.json文件中定义的安装之后的钩子会触发preinstall.js脚本,然后脚本使用名为“spawn:”的方法来启动另一个名为index.js的文件。

在 NPM 中,开发者可以使用 "post-install" 钩子来定义在安装包之后执行的自定义操作。这些操作可以包括配置、构建、复制文件、运行测试或任何其他与软件包安装后必须执行的任务。这样的钩子可以在软件包的 package.json 文件中的 "scripts" 部分中定义,通常是在 "postinstall" 属性下。例如:

Checkmarx警告:又一未知的攻击群体在通过NPM包进行软件供应链攻击

在上述示例中,当使用 NPM 安装 "my-package" 时,安装完成后将执行 "echo 'Package installed successfully!'" 这个自定义的 post-install 操作。

这些钩子可以帮助开发者自动化与软件包安装相关的任务,从而简化开发和部署过程。不同的包管理工具和项目可能具有不同的钩子名称和配置方式,因此具体的用法可能会有所不同。

02

反弹shell

当index.js作为独立进程运行时,即使主安装过程完成后,它仍然会继续保持独立运行。index.js脚本收集当前操作系统用户名和工作目录,然后将此信息通过HTTP GET请求发送到预定的服务器。

03

打包源代码

然后,恶意代码会浏览受感染机器上的目录,并针对特定目录进行攻击,例如.env、.gitlab和.github,以及具有.asp、.js和.php扩展名的文件。然后,代码会压缩发现的目录,避免不可读的目录或现有的.zip文件,然后尝试将压缩文件上传到预定义的FTP服务器。(打包源代码)。

由恶意文件中的元数据的分析可得,作者使用的名称是“lexi2”。通过对lexi2的其他引用的搜索,技术人员还发现了可以追溯到2021年的其他恶意软件包。
研究人员总结说:“删除最近一系列的恶意包只能提供临时的缓解措施,无法解决问题的根本。杜绝这些持续不断的威胁需要更复杂的策略。”
研究人员还指出,共享元数据并溯源攻击者至关重要,这种方法不仅超越了短期修复的局限性,而且能够深入分析对攻击者的行为和模式。

游民点评

npm投毒属于供应链攻击,与之相似的有pip投毒、vscode扩展投毒。这类攻击对没有安全意识的普通开发人员的攻击是致命的,好不容易得来的代码和工作转瞬间烟消云散。

在国内阿里云也发现过不少类似的攻击,他们给出了如下的建议:

npm是一个相对开放的系统,上面有数百万的安装包,恶意包的审查仅仅靠官方安全审核人员这本身是一个极大的挑战。
而大多数的使用者对官方源相对信任,在官方源遭受攻击时,极易造成大面积的安全风险。
对于官方源本身,我们建议加强安全方面的审查和投入,另一方面对于用户而言,也需要对各种供应链源进行甄别,避免自身核心财产和数据遭受损失。

同时阿里云对于病毒样本的处理映照着本文的处理方式即共享病毒样本,溯源恶意ip,同时最后溯源到的github页面却没有恶意代码更加凸显出攻击者的隐蔽性。

  //  编译者/作者 朔峰

新晋安全服务工程师,专注于攻防技术、数据安全、安全产品方向;同时也关注新媒体、区块链,最新相关技术。文章是和朋友安安合作翻译的,请大家多多关照。

原文始发于微信公众号(赛博游民营):Checkmarx警告:又一未知的攻击群体在通过NPM包进行软件供应链攻击

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月7日22:37:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Checkmarx警告:又一未知的攻击群体在通过NPM包进行软件供应链攻击https://cn-sec.com/archives/2499419.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息