恶意代码来袭!周下载 900 万次的 npm 库 coa 遭劫持

SegmentFault

共 1839字,需浏览 4分钟

 ·

2021-11-05 14:49

技术编辑:典典 61丨发自 思否编辑部
公众号:SegmentFault



据外媒 bleepingcomputer 报导,11 月 4 日,流行的 npm 库“coa” 被劫持,其中注入了恶意代码,并且短暂地影响了世界各地依赖于“coa”的 React 包。


“coa”是 Command-Option-Argument 的缩写,这个库每周在 npm 上的下载量约为 900 万次,并被 GitHub 上近 500 万个开源存储库使用。


"coa" 是 Node.js 项目的命令行选项解析器。该项目的最后一个稳定版本 2.0.2 于 2018 年 12 月发布。但是,在 npm 上突然出现了几个可疑版本:2.0.3、2.0.4、2.1.1、2.1.3 和 3.1.3,正是这些恶意版本破坏了依赖于“coa”的 React 包:


GitHub 上 coa 的恶意版本


React 开发人员 Roberto Wesley Overdijk 对此表示:


“我不知道这种情况为什么出现,也不知道到底发生了什么。但无论这个版本怎么做,它都破坏了互联网。”


另一个使用 ElBidouilleur 句柄的 GitHub 用户发现 “coa”2.1.3 版本破坏了他们的构建:


npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! coa@2.1.3 preinstall: start /B node compile.js & node compile.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the coa@2.1.3 preinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/mboutin/.npm/_logs/2021-11-04T14_01_45_544Z-debug.log


此外,几位开发者也加入了讨论,表示自“coa”的新版本发布以来,他们的构建也遇到了问题。


目前,虽然这些恶意版本已被 NPM 删除。仍可以从Sonatype 的自动恶意软件检测系统检索存档副本。


恶意软件同样劫持了 “ua-parser-js” 和假的 noblox 包


相同的事件也发生在上个月,被 Facebook、Microsoft、Amazon、Reddit 和其他大型技术公司使用的另一个流行的 npm 库 “ ua-parser-js ”遭到劫持。


据 BleepingComputer 分析,被劫持的 “coa” 版本中包含的恶意软件实际上与被劫持的 UA-PARSER-JS 版本中的代码相同,可能在两个事件背后的威胁演员之间建立链接。


恶意软件可能是窃取 Windows 的 Danabot 密码窃取木马。加载通过Regsvr32.exe 时,它将最终使用 rundll32.exe 再次启动各种参数以执行不同的恶意行为。


加载时,Danabot 将执行各种恶意活动,包括:


  • 窃取来自各种 Web 浏览器的密码,包括 Chrome、Firefox、Opera、Internet Explorer 和 Safari

  • 窃取各种应用程序的密码,包括 VNC,在线赌场应用程序,FTP 客户端和邮件帐户

  • 窃取存储的信用卡

  • 截取活动屏幕的截图

  • 日志 keystrokes

  • 将所有这些被盗数据发送回威胁演员,以允许他们违反受害者的其他账户。


“coa” 库用户应该怎么做


出于这类供应链攻击的广泛影响,强烈建议 “coa” 库用户检查自己的项目是否有恶意软件,包括检查 compile.js、 compile.bat、sdd.dll 这些文件是否存在。


如果确认已经受感染,请更改设备上的密码、密钥和令牌,同时将 coa 的 npm 版本固定到稳定版本“2.0.2”。


- END -


浏览 17
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报