2026 AI 编程工具安全事件全景:从 Grok Build 到 ZCode,发生了什么

wescode · 2026-10-20 · 代码安全 / 数据泄露 / Grok Build / ZCode / Claude Code

利益声明:本文作者参与了 wescode 的开发。本文是对公开安全事件的技术分析,所有引用来源已在文末标注。

本文是「代码安全实录」系列第 1 篇。纯事实盘点,不推荐任何具体产品。所有信息来源标注在文末。

2026 年,AI 编程工具从"好用"进入"必须用"的阶段——Cursor 的用户数突破百万,Claude Code 成为终端重度用户的标配,国内的通义灵码、Trae、ZCode 竞相争夺市场。

与此同时,一系列安全事件密集爆发。这些事件不是理论上的风险,是已经发生的、有技术取证的、引发了企业追责和监管响应的真实事件。

本文按时间线梳理 2026 年 7-9 月发生的五起关键事件,不做价值判断,只摆事实。每个开发者都应该了解这些事——不是为了恐慌,是为了在选择工具时做一个知情的决定。

2026 AI 编程工具安全事件时间线


事件一:Grok Build 静默上传整个 Git 仓库(2026 年 7 月)

发生了什么

2026 年 7 月 12 日,安全研究者 cereblab 在 GitHub Gist 公布了一份对 xAI 官方 Grok Build CLI(版本 0.2.93)的网络层抓包分析。

核心发现:Grok Build 在执行编程任务时,通过两条独立的数据通道向 xAI 的服务器发送数据——

通道一:模型调用通道(POST /v1/responses)

这是正常的——AI 编程工具调用大模型时,必须把代码上下文发送给模型。Grok Build 读取了用户指定的文件,把内容放进模型请求。这条通道在一个 12GB 的测试仓库上只传输了约 192KB。

通道二:存储通道(POST /v1/storage)

这是不正常的——同一个 12GB 仓库,这条通道已经接收了超过 5.1GiB 的数据,上传还没结束。

这条存储通道做了什么?它把整个 Git 仓库打包成 before_codebase.tar.gz 和 after_codebase.tar.gz,通过 POST /v1/storage 上传到 Google Cloud Storage 的一个名为 grok-code-session-traces 的存储桶。

被上传的内容包括:

关键细节

"关闭模型训练"开关无法阻止上传。 研究者关闭了 Grok Build 的 "Improve the model" 选项,但服务端返回的配置仍然是 trace_upload_enabled: true。这个开关控制的是"是否用数据训练模型",不是"是否上传数据"。两者是独立的——你可以选择不让数据用于训练,但数据仍然被上传和存储。

服务端远程关闭,不是客户端修复。 7 月 13 日,同一个 0.2.93 版本的客户端停止了上传行为。不是因为推送了新版本——客户端二进制的哈希值完全没变。是 xAI 在服务端把 disable_codebase_upload 设为 true。这意味着:上传功能在客户端代码里仍然存在,只是被服务端开关暂时关闭了。xAI 可以在任何时候重新打开它,不需要推送任何更新。

Elon Musk 回应称数据会被"completely and utterly deleted"。 但截至文章发布时,xAI 没有发布正式的安全公告,没有回答三个关键问题:为什么默认上传整库、数据存储了多久、有多少用户受影响。

来源


事件二:Claude Code 隐藏用户检测机制曝光(2026 年 7 月)

发生了什么

多位安全研究者在 Reddit 和 GitHub 上发布分析,称 Anthropic 的 Claude Code 客户端(版本 2.1.91 至 2.1.196)包含隐藏的用户检测逻辑。

根据逆向分析,这些逻辑包括:

这些机制的具体目的没有被 Anthropic 官方确认或否认。社区的主流猜测是用于识别是否存在模型蒸馏行为(即第三方通过 API 批量调用来训练自己的模型),但也有人认为涉及针对特定地区用户的差别化处理。

需要注意的

这起事件与 Grok Build 和 ZCode 的性质不同。Grok Build 和 ZCode 是确证的大规模数据上传——有抓包数据、有文件哈希、有存储桶地址。Claude Code 的用户检测机制更多是信任问题——闭源客户端在你的电脑上运行,你无法确切知道它在收集什么、发送什么。

从安全角度看,这不是"Claude Code 上传了你的代码",而是"你无法验证它没有做任何你不知道的事"。对于安全要求高的场景,不可审计本身就是风险。

来源


事件三:工信部 NVDB 发布 Claude Code 安全隐患提示(2026 年 7 月 8 日)

发生了什么

工信部所属国家网络安全威胁和漏洞信息共享平台(NVDB)发布情况提示:

"监测发现 AI 编程工具 Claude Code 存在安全后门隐患……其内置了监控机制,未经用户同意即可向远程服务器回传用户地域、身份标识等敏感信息,受影响的 Claude Code 为 2.1.91 至 2.1.196 版本。"

NVDB 建议:

  1. 立即开展全面排查
  2. 对安装受影响版本的开发终端,立即卸载或升级至已清除相关后门代码的最新安全版本
  3. 加强核心业务网段内开发工具外联权限管控与流量监测

意味着什么

这是中国监管部门首次对一款 AI 编程工具发布专项安全提示。它传递了一个信号:AI 编程工具已经被纳入网络安全监管的视野。

此前,AI 编程工具在企业内部的使用基本处于"工程师自己装、IT 部门不管"的状态。工信部的提示改变了这一点——它给了企业安全团队一个明确的依据,要求审查内部使用的 AI 编程工具。

来源


事件四:阿里巴巴全面禁用 Claude Code(2026 年 7 月 10 日)

发生了什么

据多家媒体报道,阿里巴巴将 Anthropic 的 Claude Code 列入高风险软件名单,要求员工从 7 月 10 日起全面禁止在办公环境下使用。

阿里的决策基于多重考量:

  1. 安全研究者发现的隐藏检测机制——闭源客户端的行为不可审计
  2. Anthropic 与阿里之间的信任危机——Anthropic 此前指控阿里通过 API 进行模型蒸馏,并对中国用户进行针对性封禁
  3. 研发数据安全——阿里内部此前鼓励员工使用 Claude Code 编码,大量内部代码可能已经通过 Claude Code 发送到 Anthropic 的服务器

阿里同时向内部推荐使用自研的智能体编程平台 Qoder 作为替代。

更深层的信号

阿里的禁用不只是一家公司的安全决策,它标志着一个趋势转变:

过去:企业对 AI 编程工具的态度是鼓励——给额度、报销订阅、让工程师自由试用。

现在:企业开始把 AI 编程工具纳入软件资产管理——允许哪些工具、哪些模型、哪些数据能发、哪些部门能用外部 API,都需要明确规则。

这不是阿里一家的事。任何有安全合规要求的企业,迟早要回答同样的问题:你们的开发者在用什么 AI 编程工具?代码数据去了哪里?

来源


事件五:ZCode 静默上传完整工作区(2026 年 9 月)

发生了什么

2026 年 9 月 18 日,开发者 ferstar 发布逆向分析,指出智谱官方 AI 编程桌面端 ZCode 会在用户保持登录时,于后台静默打包上传整个工作区。

上传的不只是当前代码——被打包的内容经统计分析,86.6% 来自 .git 目录:

内容类别文件数大小占比安全等级
.git 对象库(完整提交历史)~35,000~250MB72.4%🔴 极高
.git LFS 缓存~200~40MB11.6%🔴 高
.git reflog(操作记录)~100~8MB2.3%🟡 中
源代码和文档~6,500~45MB13.0%🔴 极高
配置文件(.env、config.yaml)~45~0.4MB0.1%🔴 极高(含密钥)
其他~566~1.8MB0.5%—
合计~42,411~345MB100%

真正的源代码只占 13%。剩下 87% 是 Git 历史、LFS 缓存、操作记录——这些包含了已经从当前版本删除的密钥、尚未推送的本地分支、内部 GitLab 域名、历史操作轨迹。

加密机制的问题

ZCode 对打包文件做了 AES-256-CTR 加密,但加密用的 RSA 公钥是服务端动态下发的,私钥仅在云端。

这意味着:

开发者无法验证上传的内容是什么,也无法验证是否真的被删除。

"体验优化"和"快照索引"开关无效

ZCode 的设置面板里有"体验优化"和"快照索引"开关。但逆向分析发现,底层的打包上传逻辑不受这些开关控制。手动删除 ~/.zcode 目录反而会触发"打地鼠"式的无限重传——删了又建、建了又传。

后续

截至本文发布时,智谱尚未公开回应企业函件中的具体问题。

来源


五款 AI 编程工具的数据上传行为对比

这些事件的共同点

五起事件表面上各不相同——有的是整库上传,有的是隐藏检测,有的是监管响应。但它们指向同一个结构性问题:

当 AI 编程工具需要"理解"你的代码时,你的代码必然以某种形式离开你的电脑。各家在"离开多少""存多久""谁能看到"上的做法差异巨大,而用户对此几乎没有感知和控制权。

维度Grok BuildZCodeClaude CodeCursor
上传范围整个 Git 仓库 + 提交历史完整工作区 + .git 历史 86.6%对话上下文代码分块 + Embedding
用户是否知情否(文档未说明)否(开关无效)隐藏检测争议是(Privacy FAQ 有说明)
能否关闭"关闭训练"不能阻止上传设置开关无效删除后仍可升级恢复可关闭索引,但请求仍走后端
加密谁持有密钥不明仅服务端不适用临时密钥,请求期间存在
事后回应Musk 称"完全删除",无正式公告致歉 + 承诺开源 + 修复版未正面回应Privacy FAQ 持续更新

Cursor 在这张表里的定位需要说清楚:Cursor 没有被曝出"静默整库上传"这种级别的问题。它的争议在于架构层面——即使自带 API Key,请求仍然经过 Cursor 后端(这是官方确认的),Embedding 向量长期存在数据库。这是一个已知的、文档化的行为,不是隐藏的后门。但对安全要求严格的场景,"代码经过第三方服务器"这件事本身就可能过不了安审——不管中间方是谁、承诺了什么。


给开发者的建议

不管你用什么工具,现在做三件事:

1. 了解你工具的数据路径

不是看营销页面,是看隐私政策和技术文档。核心问题:我的代码在什么环节离开了我的电脑?到了谁的服务器?存了多久?谁能看到?

2. 检查你的 Git 历史

如果你在 7 月之前用过 Grok Build、在 9 月之前用过 ZCode——请检查你的仓库里是否有敏感信息(API Key、数据库密码、内部域名)。即使你已经从当前代码里删除了这些信息,Git 历史里可能还有。如果有——立即轮换(更换密钥和密码)。

3. 关注你公司的安全政策

如果你的公司还没有关于 AI 编程工具的安全策略——在下次安全会议上提出来。不是为了禁止使用(那不现实),是为了明确:允许哪些工具、哪些数据能通过 AI 工具发出去、哪些项目需要用代码不出设备的方案。


下一篇

本系列第 2 篇将深度拆解 ZCode 事件的技术细节——313MB 的加密包是怎么打出来的、86.6% 的 .git 历史里包含什么、RSA 加密的具体机制、以及"数据已销毁"的承诺为什么难以验证。


信息来源汇总

#来源类型URL
1cereblab Grok Build 抓包分析技术取证GitHub Gist
2TechTimes 报道媒体techtimes.com
3ferstar ZCode 逆向分析技术取证blog.ferstar.org
4魔都水滴 ZCode 分析技术取证blog.margrop.net
5InfoQ 深度报道媒体infoq.cn
6虎嗅报道媒体huxiu.com
7工信部 NVDB 安全提示监管南方都市报
8阿里禁用报道媒体凤凰网
9Cursor Privacy FAQ官方文档cursor.com
10智谱致歉声明官方新浪财经

本文信息截至 2026 年 9 月 20 日。如各方后续发布更新或澄清,请以最新信息为准。