谷歌将Axios npm供应链攻击归因于朝鲜APT组织UNC1069

攻击事件核心归因与技术细节

谷歌威胁情报团队将近期Axios npm软件包供应链攻击事件归因于代号UNC1069的朝鲜黑客组织。该攻击以经济利益为目标,通过污染Axios软件包来针对依赖该库的开发者与组织。

谷歌威胁情报分析师John Hultquist证实了这一归因结论,指出该组织在供应链攻击领域的活跃度持续上升。谷歌威胁情报组分析报告指出:"基于攻击者使用的WAVESHAPER.V2恶意软件(该组织此前使用的WAVESHAPER恶意软件的升级版本),GTIG将此次攻击活动归因于UNC1069------这个至少自2018年起活跃的、以经济利益为导向的朝鲜背景威胁组织。此外,本次攻击使用的基础设施与UNC1069过往活动存在重叠。"

攻击者入侵了Axios维护者的npm账户(该库每周下载量超1亿次),发布恶意版本以在Linux、Windows和macOS系统上传播远程访问木马。当异常更新出现在npm仓库后,多家安全公司识别出这起供应链攻击。

恶意版本Axios(1.14.1和0.30.4)在一小时内发布,既未通过OIDC验证,也没有对应的GitHub提交记录,这些异常立即引发安全警报。研究人员认为攻击者入侵了维护者Jason Saayman的npm账户。

Aikido Security发布的报告警告:"任何在恶意版本下架前安装的用户都应假定系统已遭入侵。这些恶意版本会注入plain-crypto-js依赖项,部署针对macOS、Windows和Linux的跨平台远程访问木马。"

虽然具体影响尚不明确,但考虑到Axios每月约4亿次的下载量,在短暂的攻击窗口期内可能有大量下游项目受到影响。Socket研究人员发现,名为plain-crypto-js@4.2.1的恶意包在发布后数分钟内即被检测到,这很可能是针对Axios的协同攻击的一部分。攻击者将该依赖项植入两个受污染的Axios版本,使得恶意软件能通过这个被数百万项目信任的库传播。由于许多开发者启用自动更新功能,受影响版本可能在未被察觉的情况下被安装。

恶意代码采用混淆技术规避检测,并通过安装后脚本自动运行。执行后,它会检测操作系统类型(Windows、macOS或Linux)并下载针对各平台的第二阶段载荷。研究人员确认,针对macOS系统会投递功能完整的远程访问木马(RAT),可收集系统信息、与C2服务器通信并执行命令。

Socket报告指出:"Elastic Security安全研究员Joe Desimone在C2服务器下线前捕获并逆向分析了macOS第二阶段二进制文件。该载荷是用C++编写的全功能远程访问木马。"

为消除痕迹,恶意软件运行后会删除安装文件并恢复看似正常的包内容。专家认为此次攻击得以实施,关键在于维护者账户遭入侵,使得攻击者能未经授权发布恶意更新。

攻击影响范围与潜在风险

谷歌威胁情报组(GTIG)与其他研究人员将Axios npm供应链攻击归因于至少自2023年起活跃的朝鲜黑客组织UNC1069。SentinelOne此前观察到该组织使用macOS恶意软件,包括通过伪造Zoom活动攻击加密货币公司。Axios攻击中使用的恶意软件与朝鲜行动相关的WAVESHAPER变种高度相似。Hultquist强调该组织在供应链攻击和加密货币窃取方面具备专业能力。

WAVESHAPER.V2是UNC1069使用的多功能后门,通过C++、PowerShell或Python针对macOS、Windows等环境。它每60秒以Base64编码的JSON数据向C2服务器发送信标,使用硬编码User-Agent后等待指令。功能包括侦察(系统信息、运行进程)、目录枚举、脚本执行和PE注入。在Windows系统上,它通过隐藏批处理文件和注册表项实现持久化,具备完整的远程命令执行和文件系统访问能力。

供应链攻击趋势与防御启示

Hultquist表示:"朝鲜背景的威胁组织在供应链攻击方面经验丰富,历史上常借此窃取加密货币。虽然本次事件的全貌尚不清晰,但考虑到被污染软件包的流行度,其影响将十分深远。"

谷歌报告总结指出:"朝鲜黑客发动的这起攻击影响广泛,由于众多流行软件包依赖axios,将产生连锁反应。值得注意的是,UNC1069并非近期唯一成功实施开源供应链攻击的威胁组织。UNC6780(又名TeamPCP)近期污染了与Trivy、Checkmarx和LiteLLM等项目关联的GitHub Actions和PyPI软件包,部署SANDCLOCK凭证窃取程序以实施后续勒索活动。这些攻击可能导致数十万条机密信息泄露,短期内可能引发更多软件供应链攻击、SaaS环境入侵(导致下游客户受影响)、勒索软件事件以及加密货币盗窃。"

相关推荐
汉堡大王95273 分钟前
单次输出拉到100万Token:拆完 Gemini 4 Argon 的续写协议,才看懂谷歌这7个月在憋什么
前端·人工智能·后端
看浪的路人5 分钟前
第9讲:大模型应用监控与可观测性——OpenTelemetry + Prometheus + Grafana 全链路追踪
java·前端·spring
内存过载6 分钟前
用表格模拟甘特图:项目排期的土办法
前端·低代码
葡萄城技术团队15 分钟前
用 SpreadJS 数据验证实现省市区三级联动
前端
派小心.38 分钟前
A/B实验分层随机种子的稳定性验证
大数据·服务器·前端·数据分析
袋鼠云数栈UED团队1 小时前
从 Skills 到可靠的 Bugfix Agent
前端
幼儿园蛋小黑1 小时前
SPI 子系统:从原理到实践
java·前端·数据库
Data analyse4561 小时前
rrweb回放事件资源加载顺序重放校验
前端·人工智能·算法·机器学习·数据分析
lexiangqicheng2 小时前
自定义表单跨端共用机制-PC设计APP渲染
java·前端·javascript
zhikouai2 小时前
AI辅助逆向工程链路:从二进制接入到等价性校验
java·linux·前端