Shai-Hulud卷土重来:新型恶意软件感染npm生态,窃取开发者密钥

一种与Shai-Hulud蠕虫相关的新型恶意活动正在npm生态系统中蔓延,已感染超过25,000个包。该恶意软件在安装前阶段窃取开发者密钥,并利用非常规JavaScript运行时,其庞大且结构化的文件甚至可以混淆AI分析工具。

一种与Shai-Hulud蠕虫相关的新型恶意活动正在整个npm生态系统中蔓延。根据Wiz的研究结果,已有超过25,000个npm软件包被入侵,超过350名用户受到影响。

Shai-Hulud是今年9月感染npm注册表的蠕虫,而现在一个拼写为Sha1-Hulud的新蠕虫再次出现在生态系统中,尽管在撰写本文时,尚不清楚这两个蠕虫是否由同一个威胁行为者制造。

Wiz和Aikido的研究人员已经确认,Sha1-Hulud是在11月21日至23日期间被上传到npm生态系统的。他们还表示,来自Zapier、ENS Domains、PostHog和Postman的项目是其中被木马化的部分,并且仍在发现新被入侵的软件包。

与Shai-Hulud类似,这种新恶意软件也窃取开发者密钥,不过Sonatype的首席安全研究员Garrett Calpouzos解释说,其机制略有不同,涉及两个文件而非一个。“第一个文件检查并安装一个非标准的‘bun’ JavaScript运行时,然后使用bun来执行实际相当庞大的恶意源文件,该文件将窃取的数据发布到一个随机命名的GitHub仓库的.json文件中,”他告诉SD Times。

Wiz认为,这个预安装阶段显著增加了跨构建和运行时环境的爆炸半径。

根据Aikido的说法,其他不同之处在于:它创建了一个随机命名的被盗数据仓库,而不是硬编码的名称;可以感染多达100个软件包,而不是20个;并且如果无法通过GitHub或npm进行身份验证,它会删除用户主目录中的所有文件。

来自Wiz的研究人员建议开发者移除并替换受感染的软件包,轮换他们的密钥,审计他们的GitHub和CI/CD环境,然后通过限制CI/CD中的生命周期脚本、限制构建系统的出站网络访问以及使用短期有效的限定范围的自动化令牌来强化他们的流水线。

Sonatype的Calpouzos还表示,该文件的大小和结构会混淆AI分析工具,因为它比正常的上下文窗口要大,使得大型语言模型难以跟踪其正在读取的内容。他解释说,他通过要求ChatGPT和Gemini分析该文件来测试这一点,并且每次都会得到不同的结果。这是因为这些模型正在搜索明显的恶意软件模式,例如调用可疑域名,但并没有发现任何问题,从而得出文件是合法的结论。

“这是一个聪明的进化。攻击者不仅在躲避人类,他们还在学习躲避机器,”Calpouzos说。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计