免责声明:金色财经所有资讯仅代表作者个人观点,不构成任何投资理财建议。请确保访问网址为(jinse.com.cn) 举报

    Shai-Hulud 恶意软件深度剖析:开源即失控 ?

    Shai-Hulud 是一种针对开源软件供应链的重大网络安全威胁,是一种具有自我传播能力的 npm 恶意蠕虫病毒,会感染开源生态系统。它被认为是 npm 近年来最大规模的供应链攻击之一,涉及数百个恶意包,SlowMist MistEye 威胁情报系统已多次预警。

    YXsTw0pWNsZTaLlz6OvkH0WE5MtEvUXWdtu5MJI2.png

    昨日,一个名为 TeamPCP 的威胁组织做出了令安全界震惊的举动:他们将自己开发的凭证窃取恶意软件 Shai-Hulud 的完整源代码发布到了 GitHub 上。

    这不是一次误操作,而是一场精心策划的"能力扩散"行动。

    TnWTuFzaP5wFt3ZO949cGOnomSDVySksCU3xNnYy.png

    一、事件背景

    1.1 什么是 Shai-Hulud?

    Shai-Hulud 是一款专门针对 GitHub Actions CI/CD 环境的凭证窃取工具。其名字来源于科幻小说《沙丘》中的巨型沙虫,暗示其强大的"吞噬"能力,吞噬一切它能接触到的敏感凭证。

    1.2 发生了什么?

    TeamPCP 做了三件事:

    开源代码:将完整源码发布到 GitHub

    使用被入侵账号:通过被黑的 GitHub 账号传播

    提供部署手册:附带完整使用说明

    目前已有多个活跃仓库,且数量还在增长。攻击者甚至在仓库标题中直接写道:

    A Gift From TeamPCP(TeamPCP 的礼物)

    极具嘲讽意味。

    二、技术架构深度解析

    2.1 四层攻击架构

    Shai-Hulud 攻击架构

    ydEqXC75Kk0z9Y8HZUiWZPu9bcVVHV0LosQd8MBu.png

    具体代码实现:

    1. 启动入口与主外传目标

    文件:

    `Shai-Hulud-Open-Source-main/package.json:11`,`Shai-Hulud-Open-Source-main/src/index.ts:96-98`

    说明:确认项目默认启动即进入恶意主逻辑,并指向硬编码外传域。

    ao9s2tql0zOFDKaGgpK8XlJHXFxFbvuGnaedMEnW.png

    2. 本地与云端敏感面采集

    文件:

    `Shai-Hulud-Open-Source-main/src/index.ts:35-37,137-141`,`src/providers/devtool/devtool.ts:19`,`src/providers/aws/credentials.ts:199,249`,`src/providers/kubernetes/kubernetes.ts:58,138`

    说明:确认样本同时面向本地文件、GitHub CLI、AWS IMDS/IRSA、Kubernetes token 与 API secrets。

    Mi2Q6FqMzlMPNlzotvQMzagrqup7O3dmnvDbL8JZ.png

    3. 加密外传封装与 POST

    文件:

    `Shai-Hulud-Open-Source-main/src/sender/base.ts:48,57`,`src/sender/domain/sender.ts:70`

    说明:确认结果会被加密后发送到远端,而非仅本地收集。

    YMCUUXqEJWCXBZQxJdMC2GVHa8ydGc99EQhYj0er.png

    4. npm 供应链植入

    文件:

    `Shai-Hulud-Open-Source-main/src/collector/collector.ts:39,61`,`src/mutator/npm/index.ts:68`,`src/mutator/npmoidc/index.ts:37,172-178`,`src/utils/config.ts:7`

    说明:确认一旦捕获 token,样本会直接实施改包、注入与发布。

    V0NsGZBpipB9xgeAh6aEiHukynR1xDAs6O6w52wp.png

    5. GitHub Actions secrets 导出

    文件:

    `Shai-Hulud-Open-Source-main/src/providers/actions/workflow.ts:11`,`src/assets/workflow.yml:9,13`

    说明:确认其通过伪装 workflow 将 secrets 序列化到 artifact 中再取回。

    g29q6itN35cCqXvg5BsIKPoEHmkUOEOswazhLHW8.png

    6. GitHub fallback 外传与本地持久化

    文件:

    `Shai-Hulud-Open-Source-main/src/sender/github/githubSender.ts:58,89,157`,`src/assets/DEADMAN_SWITCH.sh:48-49,96`

    说明:确认 fallback sender 会提交外传结果,并安装 token 监控持久化脚本。

    rbqsjvliJi9lgdVcWNRWWhikIXHp7ZB41eVLHU9U.png

    7. 去混淆视图确认安装期载荷

    文件:

    `Shai-Hulud-Open-Source-main/src/assets/config.mjs:171-186`(基于去混淆视图)

    说明:去混淆结果清楚表明 `setup.mjs` 会下载 Bun 运行时并执行 `ai_init.js`,有助于确认安装期执行链。

    XyaWCtxQWroRPkLvOJtV7yvZdbgyDnmmUwxLGjNi.png

    2.2 凭证窃取范围

    这是迄今为止针对开发者环境最全面的凭证收集工具之一:

    0UQtvOgXiXwsw9EPEA3bzC8kOedf4TYkkEDdRH9n.png

    2.3 Token 识别能力

    恶意软件内置了强大的正则表达式引擎:

    ak9N1oJEHWa5h2fQAbjnCpjYL82RW8rt41qsby9s.png

    2.4 针对 Claude Code 的攻击

    这是本案的亮点之一。恶意软件专门针对 Claude Code 进行了优化:

    - 修改 Claude 配置文件:`~/.claude.json`、`~/.claude/mcp.json`

    - 注入执行钩子:当 Claude 启动时自动执行恶意代码

    - "Anthropic Magic String":使用特殊字符串阻止 Claude 分析

    aMrJjjLw5UVN5294z2SmcrUIiwvsgTHrMvqfka5M.png

    为什么针对 Claude Code?因为 Claude Code 常常运行在拥有高权限 GitHub Token 的开发者机器上。

    三、开发者画像

    3.1 代码质量评估

    4ayJfrwCgd74QQXGUiQKvh6BIkWaOwKuRQ3ncSHU.png

    结论:这是一个专业级恶意软件,开发者具备企业级软件开发能力。

    3.2 开发者地域分析

    代码中有一处非常有趣的逻辑:

    FLN82H0NJeh9s7ptntiHV8CyPL67QuKuJvjG3qQM.png

    排除俄语系统的可能原因:

    a5SFyNAdrlnuUwknu1gv5Gy5pkxBuvhmFZLiFLCa.png

    SlowMist Agent 思考:特意排除俄语系统,最合理的解释是开发者本身与俄语地区有密切联系。

    3.3 C2 服务器分析

    C2 域名:git-tanstack.com

    模仿合法域名:tanstack.com

    路径: /router

    这是典型的域名仿冒攻击手法,目的是让恶意流量看起来像合法的 TanStack 项目。

    四、追踪分析:TeamPCP

    4.1 行动痕迹

    我们发现以下有趣的线索:

    syu5LMzUmdwjRHxqX37oFqUIDGKMCWya5gqbHMc6.png

    4.2 关联账号

    三个可疑账号被发现与 Shai-Hulud 代码相关:

    Dn2I0edoszkpyQBN3nUbdAdI69MaBl11tQ32Lf6T.png

    猫是 TeamPCP 的标志 —— agwagwagwa 的 "meow!" 仓库让安全研究员确信这不是巧合。

    4.3 "Anthropic Magic String"

    恶意软件中包含一段特殊字符串,专门用来阻止 Claude Code 分析:

    zUq2oAfcCRdLoyFu4MrbGF0ch7E6GraxNA6zKypV.png

    这进一步证实了攻击者对 AI 安全工具的了解。

    五、开源的影响:潘多拉魔盒已打开

    5.1 从"专属武器"到"公共服务"

    TeamPCP 的这次开源,意味着:

    从前:只有 TeamPCP 能发动 Shai-Hulud 攻击

    现在:任何人都可以部署自己的 Shai-Hulud 变种

    5.2 copycat 已经开始行动

    我们的情报显示,fork 者已经开始修改代码并扩大攻击范围:

    - agwagwagwa 已提交 PR 添加 FreeBSD 支持

    - 更多仓库正在出现

    - 可以通过 GitHub 搜索 "A Gift From TeamPCP" 追踪

    5.3 威胁等级升级

    SRdLNGvocO1qitsL8iSAu0FllXIldSULgVZMRSlu.png

    六、IoC 指标汇总

    buz5tc8razyGIPHMuNxnZg0V3PNs19Ky99HaYyCF.png

    七、防护建议

    7.1 对开发者

    JVGVBYuctEaCdHA6RA1H0GfpyFn9Vpve6J3YZSwZ.png

    7.2 对企业

    Wnm3iOJyGxvCseFGTAE1iIgdVFUqarOvJ7ue8Kj1.png

    7.3 快速检查清单

    gr44QgnhLcAGF1CN0lBUJjv9iyWcU3vmRG8iLIWb.png

    八、总结

    Shai-Hulud 开源事件是 2026 年最重要的网络安全事件之一:

    XiAowZkGDhu6lRE5OuRC1BvKUDXIdhYzzNex39JP.png

    核心警示:开源恶意软件 = 潘多拉魔盒已打开;从小团伙到群狼的时代来了,攻击者已经在行动,你准备好了吗?

    jinse.com.cn 0
    好文章,需要你的鼓励
    jinse.com.cn 0
    好文章,需要你的鼓励
    参与评论
    0/140
    提交评论
    文章作者: / 责任编辑:

    声明:本文由入驻金色财经的作者撰写,观点仅代表作者本人,绝不代表金色财经赞同其观点或证实其描述。

    提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

    金色财经 > 慢雾科技 > Shai-Hulud 恶意软件深度剖析:开源即失控 ?
    • 寻求报道
    • 金色财经中国版App下载
      金色财经APP
      iOS & Android
    • 加入社群
      Telegram
    • 意见反馈
    • 返回顶部
    • 返回底部