10月22日,每周下载超数百万次的流行NPM包UA-Parser-JS遭到黑客劫持,导致大量Windows与Linux设备感染了加密货币挖矿软件与密码窃取木马

UA-Parser-JS可用于解析浏览器的用户代理,能够识别出访问者使用的浏览器、引擎、操作系统、CPU以及设备类型/型号。

这个项目的人气很高,每周下载量超数百万次,本月下载总量超过2400万次。此外,该包也被用于一千多个其他项目,身影遍布Facebook、微软、亚马逊、Instagram、谷歌、Slack、Mozilla、Discord、Elastic、Intuit、Reddit等知名厂商。

随后不久(10月22日),美国网络安全与基础设施安全局发布预警,在流行NPM包 UA-Parser-JS中发现恶意软件,敦促用户抓紧时间更新。

UA-Parser-JS项目被劫持大肆扩散恶意软件

10月22日,攻击者开始分发恶意版本的UA-Parser-JS NPM包,试图向众多Linux与Windows设备安装加密货币挖矿软件与密码窃取木马。

有开发者表示,自己的NPM账户遭到劫持,攻击者先后部署了三个恶意版本

UA-Parser-JS开发者Faisal Salman在bug报告中解释道,“当时我的邮箱突然被数百个网站的垃圾邮件吞没,我马上意识到,肯定出了异常状况(要不是这样,我可能根本没有察觉问题的出现,还好闹出的动静很大)。”

“我相信是有人劫持了我的npm账户,并发布了受到感染的软件包(0.7.29、0.8.0、1.0.0)。这些软件包可能会安装恶意软件,具体区别可以参考代码diff。”

受到影响的版本以及补丁修复后的版本分别为:

恶意版本

修复版本

0.7.29

0.7.30

0.8.0

0.8.1

1.0.0

1.0.1

通过开源安全厂商Sonatyp共享的恶意版本,我们可以更好地了解这次攻击的整个流程。

当受到感染的软件包被安装在用户设备上时,其中的preinstall.js脚本会检查设备上使用的操作系统类型,并启动Linux shell脚本或Windows批处理文件。

用于检查操作系统类型的preinstall.js脚本

如果软件包是安装在Linux设备上,则执行preinstall.sh脚本以检查用户是否位于俄罗斯、乌克兰、白俄罗斯及哈萨克斯坦。如果不在这些国家/地区,则该脚本将从159[.]148[.]186[.]228处下载 jsextension程序并执行。

jsextension程序是一个XMRig Moero挖矿软件。为了避免被快速检测出来,它只会使用设备CPU的50%算力

安装挖矿软件的Linux shell脚本

对于Windows设备,批处理文件同样会下载XMRig Monero挖矿软件并将其保存为 jsextension.exe加以执行。另外,批处理文件还会从citationsherbe[.]at处下载一个sdd.dll文件,并将其保存为create.dll。

安装挖矿软件的Windows批处理文件

这里下载的DLL文件是个密码窃取木马(可能属于DanaBot家族),用于窃取存储在设备上的密码内容

在使用 regsvr32.exe -s create.dll 命令完成加载后,该DLL文件会尝试窃取各类程序中保存的密码,包括主流FTP客户端、VNC、聊天软件、电子邮件客户端以及浏览器等。

除了从上述程序中窃取密码之外,该DLL还会执行PowerShell脚本以从Windows凭证管理器内窃取密码,如下图所示。

从Windows中窃取已保存的密码

此次攻击的幕后策划者,似乎也策划了本周发现的其他恶意NPM包攻击。

Sonatype的研究人员先后发现了三个恶意NPM包,会以几乎相同的方式在Linux及Windows设备上部署加密货币挖矿软件。

UA-Parser-JS用户该如何应对?

考虑到此次供应链攻击的广泛影响,强烈建议UA-Parser-JS的所有用户检查项目中是否存在恶意软件。

具体包括检查是否存在 jsextension.exe(Windows)jsextension(Linux)文件,如果找到请立即删除。

Windows用户还应扫描设备查找 create.dll 文件,一旦找到请立即删除。

虽然目前的密码窃取木马只影响到Windows设备,但Linux用户同样不能掉以轻心,要做好设备已经受到全面渗透的心理准备。

因此,所有受到感染的Linux及Windows用户都应变更密码、密钥并刷新令牌,避免凭证信息泄露并被攻击者掌握。

虽然全面更换密码与访问令牌是一项艰巨的工作,但考虑到攻击者可能借此夺取其他账户、包括在供应链攻击中进一步渗透其他项目,请大家万勿抱有侥幸心态。

参考来源:https://www.bleepingcomputer.com/news/security/popular-npm-library-hijacked-to-install-password-stealers-miners/

声明:本文来自互联网安全内参,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。