NPM供应链攻击深度解析:恶意软件Shai-hulud与技术防护方案

本文详细分析了针对Node Package Manager(NPM)的供应链攻击事件,攻击者通过钓鱼攻击入侵维护者账户,在广泛使用的JavaScript包中注入恶意代码,并部署具有自我复制能力的Shai-hulud蠕虫,窃取云服务令牌和敏感数据,影响全球数百万开发者。

主要发现

  • 攻击者通过针对性钓鱼攻击入侵Node Package Manager(NPM)维护者账户,向广泛使用的JavaScript包中注入恶意代码
  • 某些恶意包通过劫持Web API和操纵网络流量,秘密转移加密货币资产
  • 攻击载荷之一Shai-hulud蠕虫通过受感染包传播,窃取云服务令牌,部署秘密扫描工具,并扩散到其他账户
  • 根据趋势科技遥测数据,北美和欧洲组织受Cryptohijacker载荷影响最为严重,目前尚未检测到Shai-Hulud蠕虫

受影响的包类型

恶意修改针对关键的JavaScript库,包括支持开发框架和加密功能的包。受攻击影响的包具有极高的全球下载率——每周超过26亿次,影响了庞大的Web应用程序和依赖项目生态系统。

Shai-hulud攻击链分析

攻击链条

Shai-hulud攻击链始于伪装成NPM安全警报的钓鱼邮件,诱骗开发者泄露凭据。攻击者入侵开发者NPM账户并上传恶意包。安装时,该包执行JavaScript和嵌入式Unix shell脚本以建立持久性并开始窃取信息。

使用被盗的GitHub访问令牌,恶意软件向GitHub API进行身份验证,检查用户权限,并列出受害者可以访问的所有存储库——包括私有存储库。它将私有存储库克隆到攻击者账户,在每个存储库中创建新分支,并部署恶意工作流以自动化数据窃取。

技术特征

独特特性

  • 自我传播:Shai-hulud表现为蠕虫,利用开源社区中现有的信任关系自动感染其他NPM包和项目
  • 自主性:恶意软件无需直接持续操作员输入即可运行,使其更持久且难以控制
  • 环境影响:通过深度嵌入开发和CI/CD环境,Shai-hulud获得对更多凭据、令牌和敏感构建密钥的潜在访问

技术方法

  • 安装后滥用:核心传播机制围绕恶意安装后脚本,部署受感染包时执行任意代码
  • 网络活动:蠕虫可与远程服务器通信以泄露数据或接收更新
  • 递归威胁向量:Shai-hulud专为持久性设计

安全建议

  • 审计依赖项,重点关注最近更新的包
  • 撤销并轮换凭据,特别是NPM账户凭据
  • 监控Trufflehog和类似扫描工具的使用证据
  • 及时关注官方NPM注册表和可信源的安全公告
  • 加强访问和安全策略,实施最小权限原则和多因素认证

威胁检测

趋势科技Vision One™平台可检测并阻止本文所述的危害指标(IOCs),为客户提供定制化威胁狩猎查询、威胁洞察和情报报告。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计