据报道,一个名为’rand-user-agent’的npm包在供应链攻击中被入侵,威胁者通过注入混淆代码来激活远程访问木马(RAT)。来源。此包用于生成随机的用户代理字符串,广泛应用于网络爬虫、自动化测试及安全研究。尽管该包已被弃用,但每周仍有约45,000次下载量。威胁者利用其半废弃但仍受欢迎的状态,在未经授权的后续版本中注入恶意代码。这些版本可能已被大量下游项目下载。来源。Aikido的研究人员在2025年5月5日检测到这一妥协,当其恶意软件分析系统标记出’rand-user-agent’的新版本1.0.110时,发现了这一问题。进一步检查发现,混淆代码隐藏在’dist/index.js’文件中,只有在npm网站上水平滚动源代码视图时才能看到。来源。调查显示,最后一个合法版本2.0.82发布于7个月前,后续发布的版本2.0.83、2.0.84及1.0.110均为恶意版本,并没有在项目的GitHub仓库中对应的发布记录。最新版本中的恶意代码会在用户的家目录下创建一个隐藏目录,并扩展模块路径以加载依赖项,如’axios’和’socket.io-client’。然后,它会打开一个持久的Socket连接至攻击者的指挥控制(C2)服务器,并发送机器ID信息,包括主机名、用户名、操作系统类型及生成的UUID。启动的RAT会监听多种命令,包括改变工作目录、上传文件、执行Shell命令等。目前,恶意版本已从npm仓库中移除,最新可用版本是安全的,用户应恢复至该版本。然而,如果已升级至2.0.83、2.0.84或1.0.110版本,建议进行全面系统扫描以检测妥协迹象。注意,降级至合法版本并不能移除系统中的RAT。