· adswds-team · 安全  · 18 min read

Nx Console 恶意扩展 36 分钟:6000+ 次激活,GitHub 内网失陷的源头

蓝点网:Nx Console v18.95.0 被供应链劫持,维护者凭证来自此前 TanStack 事件。窗口仅 36 分钟,却导致 GitHub 员工中招、约 3800 个内部私有仓泄露。

蓝点网:Nx Console v18.95.0 被供应链劫持,维护者凭证来自此前 TanStack 事件。窗口仅 36 分钟,却导致 GitHub 员工中招、约 3800 个内部私有仓泄露。

2026 年 5 月,代码托管巨头 GitHub 遭黑客攻击并泄露约 3800 个内部私有源代码仓库,业界震动。据蓝点网报道,源头不是神秘国家级 0day,而是员工安装了携带恶意代码的知名扩展 Nx Console——恶意扩展迅速搜寻环境中的所有敏感凭证,并利用这些凭证直接连接 GitHub 内部并开始窃取任何拥有权限的数据。

窗口只有约 36 分钟,但 Nx 团队事后分析:仅 VS Code 侧恶意版激活量就约 6000 次。GitHub 被黑员工也在这个窗口内安装。

「半小时下架」从来不是安全结局,只是扩散曲线的起点。


一、背景:Nx Console 与 IDE 扩展信任模型

1.1 Nx Console 是什么

Nx Console 是非常知名的 VS Code 扩展,服务于 Nx monorepo 生态开发者。大量前端 / 全栈工程师日常依赖它做项目图、生成器、任务运行——安装量高、更新频繁、信任度强。

1.2 GitHub 事件背景

昨天(相对蓝点网发文)代码托管网站 GitHub 遭到黑客攻击并泄露约 3800 个内部私有的源代码仓库。此次攻击源头则是 GitHub 员工安装的扩展程序携带恶意代码。

1.3 发布流程缺陷

蓝点网指出:Nx Console 开发团队有 1 位维护者可以不经人工审批而直接向微软插件市场发布新版本。这名维护者则在此前的 TanStack 供应链攻击中被窃取凭证,黑客利用凭证劫持维护者账户并直接发布携带恶意代码的 Nx Console v18.95.0 版。


二、事件概览

内容
恶意版本Nx Console v18.95.0
平台VS Code 市场 + OpenVSX
存活时间36 分钟(两平台合计口径)
VS Code 激活量6000 次(Nx 内部分析)
Cursor 等激活量 0
直接重大后果GitHub 员工中招 → 约 3800 内部私有仓泄露
凭证来源此前 TanStack 供应链攻击泄露的维护者凭证

三、完整攻击链

TanStack 供应链攻击
  → Nx Console 维护者凭证泄露
  → 黑客劫持维护者账户
  → 免审发布 Nx Console v18.95.0 到 VS Code / OpenVSX
  → 开发者 / GitHub 员工安装或自动更新
  → 恶意扩展搜寻环境中所有敏感凭证
  → 使用凭证连接 GitHub 内部
  → 窃取权限范围内数据(含约 3800 内部私有仓)
  → macOS 上可能存在持久化(需按官方指南清理)

3.1 恶意扩展的行为(蓝点网转述)

恶意扩展迅速搜寻环境中的所有敏感凭证,并利用这些凭证直接连接 GitHub 内部并开始窃取任何拥有权限的数据——不是只读本地文件,而是用偷来的钥匙进内网。

3.2 三次信任破产

  1. 上游:TanStack 事件留下凭证债务未彻底清理;
  2. 发布:单维护者免审发版 = 单点失守即全局推送;
  3. 终端:员工开发机持有过高权限凭证,扩展可读环境秘密。

四、攻击时间线(UTC,2026-05-19)

蓝点网列出的关键节点:

时间(UTC)事件
12:30黑客通过窃取的凭证向微软发布 18.95.0
12:36开发团队收到新版本发布的邮件通知
12:47开发团队立即在微软插件市场取消扩展发布
12:48微软收到开发者请求后取消恶意版本的发布
13:09OpenVSX 平台恶意版才被取消(发现更晚)

因此:Nx Console 恶意版本在 VS Code 与 OpenVSX 平台的实际存活时间为 36 分钟

4.1 OpenVSX 延迟

OpenVSX 平台的恶意扩展被发现的比较晚,到 UTC 13:09 开发者才取消恶意版本的发布——比 VS Code 侧晚约 21 分钟


五、技术细节:安装量 vs 激活量

5.1 官方平台统计

  • 微软数据显示:窗口期内安装恶意扩展的次数仅为 28 次;
  • OpenVSX 平台:安装次数为 41 次;

5.2 Nx 内部分析

  • Nx Console 通过内部分析发现:VSCode 恶意版本激活量达 6000 次
  • 其他平台包括 Cursor 等平台的激活量为 0
  • 开发团队认为:实际安装恶意扩展的开发者可能超过 6000 名

5.3 为何数字差这么大?

蓝点网转述团队判断,但未展开技术原因。对安全运营的实际启示是:

商店后台的「安装次数」可能严重低估真实暴露面——应以「是否运行过 18.95.0」为准,而不是只看 28 次安装自我安慰。

可能因素包括:自动更新延迟上报、离线激活、遥测口径差异等(此为分析性建议,非蓝点网原文)。

5.4 macOS 持久化

蓝点网强调:这些恶意代码在 macOS 上还存在持久化问题,开发者可能需要按照指南仔细进行排查;如果仍然不放心,甚至可能需要直接重置系统确保恶意代码被清理干净。

Nx Console 团队已在 GitHub 上发布详细的删除恶意代码的方法和其他指南


六、影响面

6.1 GitHub 公司

  • 3800内部私有源代码仓库泄露;
  • 源头为员工在窗口期安装恶意扩展;
  • 证明 IDE 扩展供应链可直达核心代码资产。

6.2 普通 Nx 用户

蓝点网称:其他在窗口期内安装该扩展程序的开发者很显然也已经被窃取数据,只不过可能很多开发者还不清楚自己的所有凭证已经被窃取。

6000+ 激活意味着潜在规模远大于 GitHub 单一受害者。

6.3 生态信任

  • TanStack → Nx Console → GitHub 的链条显示:上游凭证债务会向下游爆炸
  • 免审发版模式在扩展生态中普遍存在,风险被长期低估。

七、自查命令与排查步骤

7.1 确认是否安装 18.95.0

VS Code:

# 查看已安装扩展及版本(需在 VS Code CLI 可用环境)
code --list-extensions --show-versions | grep -i nx

# 扩展目录(macOS 示例)
ls ~/.vscode/extensions/ | grep -i nx-console

# 扩展目录(Windows 示例)
dir "%USERPROFILE%\.vscode\extensions" | findstr /i nx

若版本号含 18.95.0,按中招处理。

Cursor 用户:

蓝点网称 Cursor 等平台激活量为 0,但仍建议核对本机扩展版本以防口径差异。

7.2 检查异常网络与凭证使用(建议)

  • 审查 GitHub / GitLab 审计日志:窗口期(UTC 2026-05-19 12:30 起)是否有陌生 IP、token 使用;
  • 检查是否新增 Deploy KeyPersonal Access TokenSSH Key
  • 查 CI/CD Actions / Pipeline 异常运行。

7.3 macOS 持久化排查

  • Nx Console 团队在 GitHub 发布的指南逐步操作(蓝点网明确指向官方指南,具体路径请查阅 Nx 官方仓库);
  • 检查 LaunchAgents、LaunchDaemons、cron 是否有窗口期新增项。

八、应急步骤

蓝点网建议:安装 Nx Console 的开发者都需要立即检查;建议直接轮换所有关键凭证,轮换后检查各类凭证是否存在异常登录。

8.1 个人开发者

  1. 确认是否安装/激活过 18.95.0(含自动更新);
  2. 按 Nx 官方 GitHub 指南删除恶意代码
  3. macOS 重点查持久化;不放心则重置系统
  4. 轮换:云密钥、Git 令牌、SSH、npm、公司 SSO 等;
  5. 审查 GitHub/GitLab 审计日志、异常仓库、异常 Actions;
  6. 向公司安全组报备。

8.2 企业安全团队

  • MDM / 扩展白名单:强制卸载 18.95.0
  • 统计谁在 UTC 12:30~13:09 窗口在线更新过 Nx Console;
  • 对曾访问内网代码的终端提高轮换级别;
  • 检查异常 outbound 到陌生凭证收集端。

8.3 轮换后验证

  • 旧 token 应已失效;
  • 服务器 auth.log / 云审计中不应再出现使用旧凭证的记录;
  • 若仍有,说明攻击者可能已建立其他持久化路径。

九、制度建议

9.1 Nx 团队已表态的方向(蓝点网转述)

开发团队后续会改进流程,不再允许不经人工审批发布扩展新版本,提高黑客利用失窃凭证直接发版的难度;并建议其他 VS Code 扩展开发者遵循相同流程。

9.2 可复制的最小发布基线(建议)

控制项说明
双人审批任何市场发版需第二人确认
硬件 MFA发布账号强制 FIDO
异常告警新版本发布邮件进入 on-call
凭证隔离扩展发布权与日常开发凭证分离
上游联动TanStack 类事件应触发强制轮换与发版冻结

9.3 IDE 扩展企业治理(建议)

扩展通常拥有:工作区文件读写、环境变量可见、自动更新。建议:

  1. 扩展白名单(允许列表,非黑名单);
  2. 延迟自动更新,金丝雀组先行;
  3. 禁止在「持有生产凭证」的 profile 里装大量未知扩展;
  4. 评估发布者是否免审、是否多人维护。

十、FAQ

Q:恶意版本号是多少?

A:Nx Console v18.95.0

Q:活了多久?

A:约 36 分钟(VS Code + OpenVSX,UTC 2026-05-19 12:30 起算)。

Q:到底有多少人安装?

A:微软统计 28 次安装,OpenVSX 41 次;但 Nx 内部分析 VS Code 激活量约 6000,团队认为实际可能超过 6000 名开发者。

Q:和 GitHub 泄露的关系?

A:蓝点网明确:GitHub 被黑源头是员工安装的 Nx Console 恶意扩展;泄露约 3800 个内部私有仓。

Q:凭证从哪来的?

A:维护者在此前 TanStack 供应链攻击中被窃取凭证。

Q:Cursor 用户需要排查吗?

A:蓝点网称 Cursor 等平台激活量为 0,但本机仍建议核对扩展版本。

Q:macOS 为什么要重装系统?

A:蓝点网称恶意代码在 macOS 存在持久化问题;若按官方指南仍不放心,可重置系统。

Q:GitHub 普通用户受影响吗?

A:蓝点网本文聚焦 GitHub 内部约 3800 私有仓及安装恶意扩展的开发者凭证泄露,未描述 GitHub 公有用户库大规模泄露。


十一、给管理层的一页纸

  • 事实:恶意 Nx Console 18.95.0 存活约 36 分钟,VS Code 激活约 6000;与 GitHub 约 3800 内部仓泄露同源。
  • 根因:TanStack 凭证债务 + 免审发版 + 开发机权限过大。
  • 立刻:全员自查 Nx Console 版本;按 GitHub 指南清恶意代码与 macOS 持久化;轮换凭证。
  • 制度:扩展白名单、发版双审、上游供应链事件强制轮换。

十二、与 2026 年供应链攻击潮的对照

事件载体特点
Apifox桌面 CDN JS打开即中招
Bitwarden CLInpm 93 分钟短窗 + 高信任包
Nx ConsoleVS Code 扩展 36 分钟6000 激活 → 内网源码
Axiosnpm 维护者明星依赖

Nx Console 案例的独特性在于:扩展权限 + 员工高权限凭证 → 直接打到代码托管平台内网


十三、深度解读:从 TanStack 到 GitHub 的凭证债务

蓝点网把整条链讲得很清楚:TanStack 供应链攻击 → 维护者凭证泄露 → 免审发布 Nx Console 18.95.0 → 开发者 / GitHub 员工安装 → 扩展搜刮凭证 → 连接 GitHub 内部 → 约 3800 私有仓泄露。

这一链条对企业有三个硬性启示:

  1. 上游安全事件不是「别人家的新闻」——若你的维护者也是其他项目的维护者,凭证债务会跨项目传递;
  2. IDE 扩展权限 ≈ 半个 root——能读环境秘密就能进内网;
  3. 市场安装统计不能当暴露面 KPI——6000 激活 vs 28 安装的落差是本文最重要的运营教训之一。

13.1 为何 GitHub 员工也会装 Nx Console

Nx 在前端 monorepo 生态极普及,GitHub 内部工程师同样可能使用 Nx 管理项目。内部员工终端外部开发者终端面临相同的扩展供应链风险——甚至因内网凭证价值更高而后果更严重。

13.2 OpenVSX 21 分钟延迟

UTC 12:48 VS Code 侧已取消恶意版,OpenVSX 直到 13:09 才取消——使用 OpenVSX 源(如部分 VSCodium 用户)多暴露 21 分钟。蓝点网给出精确时间点,团队应据此核对本机扩展源。


十四、扩展 FAQ

Q:恶意扩展在哪个市场发布?

A:微软 VS Code 插件市场OpenVSX 均有;两平台合计存活约 36 分钟

Q:18.95.0 是唯一恶意版本吗?

A:蓝点网全文仅指 v18.95.0 为恶意版本;排查应聚焦该版本。

Q:Nx 团队在哪里发清理指南?

A:蓝点网称团队在 GitHub 上发布详细删除恶意代码的方法和其他指南——请前往 Nx Console 官方仓库查阅最新文档。

Q:36000 还是 3800 个仓库?

A:蓝点网写的是约 3800内部私有源代码仓库,勿与其他事件的数字混淆。

Q:TanStack 事件细节在哪?

A:蓝点网仅说明凭证来自此前的 TanStack 供应链攻击,未在本文展开 TanStack 细节;排查 Nx Console 时不依赖 TanStack 是否与你有关——只要装过 18.95.0 就应响应。

Q:Windows 有持久化吗?

A:蓝点网明确提到 macOS 存在持久化问题;Windows 用户仍应按官方指南排查,但 macOS 被点名需重装系统。


十五、扩展自查:扩展缓存与自动更新(建议)

# Windows:列出 Nx Console 扩展目录及 manifest 版本
Get-ChildItem "$env:USERPROFILE\.vscode\extensions" -Filter "*nx-console*" |
  ForEach-Object { Get-Content "$($_.FullName)\package.json" | Select-String "version" }
# macOS / Linux:检查 VS Code 自动更新日志(路径因安装方式而异)
# 关注 2026-05-19 UTC 12:30~13:09 是否更新 nx-console

若 manifest 中版本为 18.95.0,按蓝点网建议立即检查、清理、轮换。


十六、来源与声明

本文事实依据:蓝点网《请火速排查!知名扩展Nx Console遭供应链攻击 这也是GitHub被黑的源头》

时间线(UTC 2026-05-19 12:30 发布至 13:09 OpenVSX 下架)、6000 VS Code 激活量、28 / 41 安装量、约 3800 GitHub 内部私有仓、TanStack 凭证来源、macOS 持久化、免审发版改革、Cursor 激活量 0 均转述自该报道。第七、九、十四、十五节扩展内容为通用安全实践;Nx 官方清理步骤请以团队在 GitHub 发布的指南为准。

相关文章

查看全部 »

同标签更多