自2023年8月初以来,已在npm软件包存储库中发现了十多个恶意软件包,这些软件包具有部署名为Luna Token Grabber的开源信息窃取器的能力,可针对属于Roblox开发人员的系统进行攻击。
这个持续进行的攻击活动最早在8月1日被ReversingLabs发现,它使用伪装成合法软件包noblox.js的模块,noblox.js是一个用于创建与Roblox游戏平台交互的脚本的API包装器。
这家软件供应链安全公司将这一活动描述为“两年前发现的一次攻击的重演”,时间是在2021年10月。
在周二的分析中,软件威胁研究员Lucija Valentić表示:“这些恶意软件包复制了合法的noblox.js软件包的代码,但添加了恶意的、窃取信息的功能。”
这些软件包在被下架之前累计下载了963次。这些恶意软件包的名称如下:
- noblox.js-vps (versions 4.14.0 to 4.23.0)
- noblox.js-ssh (versions 4.2.3 to 4.2.5)
- noblox.js-secure (versions 4.1.0, 4.2.0 to 4.2.3)
尽管最新攻击波的整体轮廓与之前的相似,但它也展示了一些独特的特征,特别是在部署可执行文件以传递Luna Grabber方面。
ReversingLabs表示,这一进展是在npm上发现的多阶段感染序列的罕见实例之一。
Valentić指出:“对软件供应链进行恶意攻击时,复杂和简单攻击之间的区别通常在于恶意行为者为掩盖攻击和使恶意软件包看起来合法所付出的努力程度。”
特别是这些模块巧妙地将其恶意功能隐藏在一个名为postinstall.js的单独文件中,该文件在安装后被调用。
这是因为真正的noblox.js包也使用了一个同名文件,用于向用户显示感谢消息,并提供文档和GitHub存储库的链接。
另一方面,虚假的变种利用JavaScript文件来验证软件包是否安装在Windows机器上,如果是,则下载并执行在Discord CDN上托管的第二阶段的有效负载,或者显示错误消息。
ReversingLabs表示,第二阶段随着每一次迭代不断演变,逐渐添加更多功能和混淆机制以阻挠分析。该脚本的主要责任是下载Luna Token Grabber,这是一个Python工具,可以从Web浏览器和Discord令牌中窃取凭据。
然而,看起来npm活动背后的威胁行为者似乎只选择使用由Luna Token Grabber的作者提供的可配置构建器来收集受害者的系统信息。
这并不是Luna Token Grabber第一次在野外被发现。今年6月早些时候,Trellix披露了一个名为Skuld的基于Go的信息窃取者的详细信息,与该恶意软件株重叠。
“这再次凸显了恶意行为者使用Typosquatting作为一种技术,以类似命名的合法软件包的幌子欺骗开发者下载恶意代码的趋势,” Valentić说道。
本文转载自https://thehackernews.com/2023/08/over-dozen-malicious-npm-packages.html,本文观点不代表墨知立场。