事件背景:一场跨度长达一年的供应链暗战
近期,Amazon 威胁情报团队发布报告,将 2025 年 9 月发生的 npm 热门包(如 debug 和 chalk)劫持事件,正式归因于朝鲜黑客组织 Sapphire Sleet(亦被称为 UNC1069、BlueNoroff 等)。
回顾这一事件,最初被外界视为单纯的加密货币窃取活动,受影响的 18 个 npm 包每周下载量超过 20 亿次。从我们的应急响应经验来看,攻击者往往通过针对性钓鱼获取包维护者的账号权限,进而植入恶意代码。虽然此类攻击的直接经济收益可能并不高,但其作为“试验场”的战略价值不容忽视。
攻击链分析:社交工程与代码植入的组合拳
通过对多起攻击活动的串联分析,我们发现 Sapphire Sleet 的攻击手法具有高度的一致性。
首先是精准的社交工程。攻击者通常会伪造 npm 官方域名,通过钓鱼邮件诱导维护者登录,从而获取账号权限。一旦得手,他们便会发布包含恶意后门的更新版本。
在技术实现上,攻击者展现了极强的“灵活性”。在早期的 typo-crypto 攻击和针对 debug、chalk 的攻击中,他们并未依赖 npm 传统的 install 脚本(这是很多企业容易忽视的防御死角),而是采用了浏览器侧的拦截技术:通过 Hook 掉 fetch、XMLHttpRequest 以及钱包 API,在用户签名交易前动态重写交易地址。这种方式不依赖持久化,极具隐蔽性。相比之下,在后期的 axios 等攻击中,攻击者则转向了更典型的 post-install 钩子执行恶意载荷。
攻击组织画像:Sapphire Sleet 的威胁演进
Sapphire Sleet 是一个长期活跃的威胁组织,其背景与朝鲜政府相关联。该组织不仅擅长金融犯罪,更在软件供应链投毒领域表现出极高的战术成熟度。
从我们观察到的技术特征看,该组织善于利用开源生态的信任机制,通过“小步快跑”的策略,先利用冷门包(如 typo-crypto)测试 C2 服务器和混淆机制,待技术成熟后再针对高流量包发起攻击。这种从测试到实战的演进路径,是当前高级持续性威胁(APT)组织的典型特征。
Solar 应急响应建议
针对日益频发的 npm 供应链攻击,企业应建立多维度的防御体系:
- 强化身份认证:对于开源项目的维护者,务必强制开启多因素认证(MFA),并尽可能使用 OIDC 等更安全的发布机制。
- 依赖审计与锁定:不要盲目信任最新版本。企业应在构建流程中引入软件成分分析(SCA)工具,对依赖包进行哈希锁定,并监控版本发布频率和作者信息的变化。
- 动态防御:鉴于攻击者已绕过传统的 install 脚本防御,建议企业在开发环境中部署针对网络请求和异常 API 调用的监控方案,识别非预期的恶意交互。
- 关注官方安全补丁:npm 虽然已在 v12 版本中默认关闭依赖生命周期脚本,但这只能解决部分问题,不能从根本上杜绝维护者账号被盗的风险。
类似攻击近年来明显增加,企业必须从“信任依赖”转向“零信任依赖”的防御思维。
如果您想了解勒索病毒的最新发展趋势,或在实际业务中遇到类似安全事件,欢迎关注“Solar应急响应团队”。
全国热线:400-613-6816 官网:www.solarsecurity.cn / www.sierting.com