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

知名开源建置工具Nx遭植入恶意程序上架NPM,开发者凭证恐外洩

科技智能 admin 浏览 评论

知名开源建置工具Nx被发现有恶意版本被发布至NPM。遭植入恶意程序的Nx套件在安装时,会于本机逐一走访文件系统,搜集凭证与文字档,并透过受害者的GitHub帐号建立名称包含s1ngularity-repository的储存库,上传经编码的资料。

此外,恶意版本不仅窃取凭证,还会改写使用者终端机启动档,在输入密码后直接强制关机。虽然官方已将相关版本下架并撤销可发布的NPM权杖,但由于这些版本曾一度被标记为最新版,用户在那段时间安装或还原套件,都可能受到影响。

这起事件的根本原因,为Nx的GitHub Actions自动化流程出现漏洞,攻击者结合Bash注入与流程提权,利用拉取请求验证工作流程窃取NPM发布权杖,并藉此将恶意程序码推送到NPM。虽然主分支受保护,但旧分支的残余弱点仍被利用,让攻击链得以串接完成。

受影响的版本包括nx 20.9.0至20.12.0及21.5.0至21.8.0,@nx/devkit、@nx/js、@nx/workspace、@nx/node的20.9.0与21.5.0,@nx/eslint的21.5.0,以及@nx/key和@nx/enterprise-cloud的3.2.0。一般开发者无需记住所有版本号,只需检查专案及全域环境是否安装上述区间的版本即可。

值得注意的是,部分用户即使未使用Nx工作区,也因IDE外挂Nx Console会自动安装最新版本的Nx,在恶意版本挂为最新版期间,仅开启IDE就有可能触发攻击。官方现已更新Nx Console,停止自动安装行为。

针对本次事件,官方採取多项修补措施,包括恢复安全版本为最新,全面轮换GitHub及NPM机密、改用NPM Trusted Publisher机制发布套件,还强制所有套件启用双因素验证,及启用CodeQL进行原始码检查。同时清理和Rebase合併所有含脆弱流程的旧分支,并要求外部贡献者拉取请求须经团队核准。

官方建议开发者立即检查GitHub帐号,一旦发现名称包含s1ngularity-repository的储存库,在保存文件后移除并通知官方。其次,用npm ls nx确认环境是否安装恶意版本,必要时卸载后重新安装最新版本并清理快取。最后,全面轮换GitHub与NPM等服务的凭证与权杖,并检查.zshrc与.bashrc删除可疑命令。

发表我的评论
取消评论

表情

您的回复是我们的动力!

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

网友最新评论