微软发现自2024年10月起,Node.js在恶意软件攻击中的使用显著增加,包括2025年4月仍在持续的一场以加密货币为主题的恶意广告攻击。
攻击者正逐步转向使用Node.js部署恶意软件,取代传统的Python或PHP脚本。Node.js允许攻击者将恶意代码与合法应用混合,绕过安全工具检测并在系统中持久驻留。作为开源的跨平台JavaScript运行时环境,Node.js使得JavaScript代码能在浏览器外运行。虽然目前基于Node.js的威胁占比不高,但正成为攻击态势演进中不可忽视的部分。
在四月攻击中,攻击者通过恶意广告将用户诱导至仿冒网站,提供伪装成正规软件的恶意安装程序。程序执行后会释放恶意DLL文件("CustomActions.dll"),该文件通过WMI收集系统数据,利用计划任务实现持久化,并调用PowerShell命令进行防御规避和后续载荷投递。
随后DLL会打开显示正规加密货币交易网站的msedge_proxy窗口作为诱饵。"创建的计划任务会执行特殊设计的PowerShell命令,使微软终端防护软件不对PowerShell进程和当前目录进行扫描。"微软在报告中指出,"该操作使得后续PowerShell执行不被标记,确保攻击可不受干扰地持续进行。"
攻击采用混淆的PowerShell脚本从远程URL获取代码,收集详细的系统与BIOS信息,将其打包为JSON格式发送至攻击者的C2服务器。在此阶段,PowerShell脚本会从指挥控制服务器下载包含Node.js运行时和编译后JavaScript文件的压缩包。Node.js可执行文件随后运行脚本,建立网络连接并很可能窃取浏览器敏感数据。
研究人员在近期攻击中还发现一项值得关注的技术:通过Node.js内联执行JavaScript来部署恶意载荷。在已记录的案例中,攻击者利用ClickFix社会工程手段诱使用户运行PowerShell命令,该命令会下载安装Node.js组件。脚本随后直接通过Node.js执行JavaScript代码,实现网络侦察、将C2通信伪装成合法Cloudflare流量,并通过修改注册表运行键实现持久化驻留。
原文始发于微信公众号(黑猫安全):针对加密货币用户的Node.js恶意广告攻击活动
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论