最新消息:关注人工智能 AI赋能新媒体运营

NPM套件rand-user-agent遭供应链攻击,植入远端木马监控用户系统

科技智能 admin 浏览 评论

攻击者将恶意程序码藏在rand-user-agent套件,透过横向捲轴刻意隐藏在程序码页面底部,试图避开检查

资安厂商Aikido研究人员发现开源JavaScript函式库rand-user-agent被植入远端存取木马(Remote Access Trojan,RAT),攻击者窃用发布权限,针对开发者常用的NPM套件进行供应链攻击。rand-user-agent套件虽非热门套件,但每周下载量仍达4万5千次,推估已有部分用户系统遭入侵。

受影响的rand-user-agent版本包含1.0.110、2.0.83与2.0.84,均非由原开发团队透过GitHub推送,疑似有第三方在原作者未维护套件期间窃用发布权限,将恶意版本上架至NPM。

恶意程序码在该套件内部以混淆工程隐藏,使用极长的字串与加密逻辑绕过静态分析。攻击者植入的后门程序可与远端指令服务器建立连线,并具备上传本机文件、切换工作目录以及执行任意系统指令等能力。初始恶意程序会检查系统中是否存在axios与socket.io-client套件,若无则自动于使用者主目录下的隐藏路径.node_modules,安装所需模组以方便后续运作,并避免被开发者注意。

RAT还会主动向攻击者回报主机名称与登入帐号资讯,并建立唯一识别码作为后续控制辨识依据。一旦连线建立,远端服务器即可发送命令,例如上传目录中所有文件、终止作业、切换路径,甚至透过Node.js核心模组child_process执行任意系统指令。

研究人员在这个案例发现一个精巧的手法,是透过修改PATH环境变数优先顺序,在Windows系统中加入虚假的Python安装路径,劫持原本预期由合法Python执行的操作流程,进一步提高攻击成功率。由于该路径设于%LOCALAPPDATA%,难以被用户即时察觉。

从GitHub纪录来看,rand-user-agent专案自7个月前版本2.0.82后便未再更新,但NPM注册中心却出现新的版本上架纪录,这代表攻击者可能已取得NPM帐号凭证,并藉此发布含恶意载荷的新版本。

对于企业或个人开发者而言,该事件凸显供应链风险管理的重要性,尤其针对未持续维护又未设置多因素认证的开源专案,其NPM帐号安全性也应被视为风险控管的一环。此外,建议有使用该套件的开发者,立即检查安装记录,并确认系统是否有和C2服务器进行异常通讯。

发表我的评论
取消评论

表情

您的回复是我们的动力!

  • 昵称 (必填)
  • 验证码 点击我更换图片

网友最新评论