新闻 深度 观点 研究 数据 资源 活动 关于

Grok Build 与 ZCode 上传风波之后:开源能换回信任吗

Grok Build 被抓包证实静默上传 5.1 GiB 用户数据,ZCode 被曝把整个工作区加密直传云端。两家公司先后开源回应。代码公开了,审计真的发生了吗?

三个月里,两个 AI 编程工具干了同一件事:把用户的代码库打包上传到云端,然后被外部研究者抓包。SpaceXAI(前身 xAI)的 Grok Build 一次上传了 5.1 GiB 用户数据1。智谱(Z.ai)的 ZCode 把 313MB 加密包直传阿里云 OSS2。两家公司的后续动作也几乎一样:先改默认行为,再道歉,最后把代码开源。

开源之后,质疑声确实小了。但把两边的仓库和第三方审计材料翻完,一个问题浮出来:开源给大家的是”可以审计”的资格,审计这件事本身,几乎没人真正做完。

两起事件,同一个剧本

时间事件
2026-07-12SpaceXAI 服务端关闭默认数据保留,马斯克承诺删除此前上传的数据,一个字节不留13
2026-07-13安全研究者 Cereblab 用 mitmproxy 抓包,证实 Grok Build CLI 静默上传 5.1 GiB 到 Google Cloud Storage 桶1
2026-07-15Grok Build 以 Apache 2.0 开源4,仓库当前 26,332 stars、4,948 forks5
2026-09-18ferstar 发布取证分析,ZCode 被证实上传整个工作区67;智谱当天致歉8
2026-09-19ZCode 推送 3.14.0,更新日志写”修复仓库百科异常上传的问题”2
2026-09-21ZCode 开源至 GitHub,一天内近 5000 star910

Grok Build 上传了完整 git 仓库、commit 历史和 .env 凭证文件,模型上下文真正需要的只有约 192 KB1。有用户在 home 目录运行后报告,上传内容包括”我的 SSH 密钥、密码管理器数据库、文档、照片、视频,所有东西”3。ZCode 那边更彻底:.git 历史、LFS 大文件缓存、reflog、部分全局开发配置全部打包。313MB 的加密包对应约 345MB 工作区,86.6% 是 .git 历史,清单列了 2411 个文件,一次全量上传连续失败 564 次还在重试2。

闭源的时候,疑惑解不开

闭源状态下,用户想搞清楚”我的数据去哪了”,会撞上三道锁。

第一道是文档。ZCode 隐私政策(2026-06-15 更新)写的是收集”您在对话中向我们提交的文本、文件和代码”,全文没有提工作区快照和 Git 历史上传11。用户读完协议,依然不知道自己的整个仓库会被发走。

第二道是开关。Grok Build 用户就算在设置里显式写了 disable_codebase_upload,上传照样发生1。ZCode 界面有两个开关,一个管”是否用于模型训练”,一个管”是否为快照建索引”。ferstar 测试的 3.12.3 版本里,两个都关掉,打包上传依然发生2。开关摆在界面上,开关后面没有接线。

第三道最绝:用户连自己数据的解密权都没有。ZCode 的上传链路是本地 AES-256-CTR 加密,RSA-OAEP-SHA256 信封包裹对称密钥,直传 OSS 不经过业务服务器。解密私钥全程只在云端,用户手里只有 encryptedDataKey,没有任何解密路径11。一位 HN 用户评论(经 UpXuu 转述)说得直白:“信封加密 + 服务端持有私钥,把本地备份变成了远程资产提取。”11

三道锁叠在一起,普通用户连”指控”的取证手段都没有。能站出来说话的,只有会抓包、会逆向的人。Cereblab 靠 mitmproxy 中间人抓包证实 Grok Build1,ferstar 完整取证了 ZCode 的上传行为67。这种孤勇者式的验证,本身就说明闭源系统里信任的成本有多高。

本节所述上传行为,均来自公开发表的第三方取证报告,以及厂商在公开渠道的说明与致歉,未加入任何未经证实的动机推断。

开源了,谁来审计

两家公司的开源表态都很漂亮。SpaceXAI 公告说,公开代码是 “build toward a robust and reliable harness” 最直接的方式4。智谱对封面新闻说:“开源是回应用户关切、提升产品透明度的重要一步,未来将邀请社区共同参与产品改进。”2

问题在于,代码放出来和代码被审计,中间隔着工作量。

Grok Build 仓库约 132 万行 Rust、77 个 crates(据 AgentScout 统计)12。ZCode 一次性倒入 6973 个文件、约 103 万行代码9。这个量级,全职安全研究员也读不完。Grok Build 开源在 Hacker News 冲上首页(287 分、97 条评论,UpXuu 转述)1311,热闹归热闹,真正动手审计的没几个人。

实际发生的审计全是点状抽查。NxCode 审计了 Grok Build 的数据面:代码里 GCS/S3 上传栈(upload/gcs.rs 等)还在,trace 上传被 stub 成返回 session_state_upload_unavailable。AuthManager::is_data_collection_disabled() 记录为 fail-open,allows_data_collection() 是 fail-closed,每条代码路径用哪个谓词,审计义务还挂在使用者身上14。ZCode 那边,ferstar 复核开源代码后确认上传链路已彻底清除2。

机构审计的情况更微妙。中国信通院技术评测确认 zcode-prod OSS 存储桶”云端零数据”、v3.14.0 已移除 Repo Wiki 功能与上传链路,绿盟科技确认存储桶及全部数据对象已删除。但截至封面新闻发稿,两家机构都没有公开审计报告和结论28。“已经审计过了”这句话本身,又是一个打不开的黑盒。

开源把审计资格发了出去,审计没有因此自动发生。

开源版和闭源版,是两个东西

第三层问题更隐蔽:仓库里的那个版本,和你实际在用的版本,对不上。

ZCode 的仓库只有 2 个 commit:一个空的 Initial commit,一个 “feat: open source” 巨型提交,一次性倒入全部代码9。内部开发历史被压平,上传功能什么时候写进去、怎么移除,从仓库里完全看不出来。一个因为打包用户全量 .git 历史出事的产品,自己开源时 git 历史是零。

代码也不完整。开源版里 Computer Use 只剩占位符。闭源版大量核心逻辑封装在 native 动态库 build/Release/ax_native.node 里,没随源码放出。native 库的逆向难度远高于 TypeScript,开源的 103 万行主要是外围绑定和界面层9。仓库里 CodingPlanStatusActions.tsx 还留着一句注释:“开源版不享受额度活动权益”9。从这句注释看,官网下载的闭源版和仓库里的开源版被区别对待。

Grok Build 是另一种形态。代码从内部 monorepo 周期性同步,根目录的 SOURCE_REV 记录内部 commit SHA。CONTRIBUTING.md 写明不接受外部 PR 和未经请求的补丁。GitHub issues 功能直接关闭(2026-07-26 查询时 has_issues: false),安全问题走 HackerOne,一般反馈走 Discord15。NxCode 还指出,公开快照只有一个提交,没有从 release tag 到二进制的出处链,你下载的二进制和仓库里的源码对不对得上,没人验证过14。

UpXuu 记录的第三方团队复现,说清了”修复”的实际形态:对致歉后的 3.12.3 做隔离复现,上传行为确实停了,但上传管线代码一行没删。upload-credential 端点构造、captureBeforePrompt、RepoWikiGenerator、信封加密实现完整保留。实际改动是开关默认值翻成 false、老配置强制迁移、Repo Wiki 服务端下线。修复发生在默认值与服务端配置层,理论上可以经服务端配置重新启用11。

ferstar 的结论结构值得记住:现在的代码能证明”现在的版本不再上传”,证明不了”过去的版本上传了什么、从什么时候开始上传”2。

两边放一起看

维度Grok BuildZCode
许可证Apache 2.04Apache 2.09
代码规模约 132 万行 Rust、77 个 crates(据 AgentScout 统计)12约 103 万行、6973 个文件9
Git 历史只有一个公开提交142 个 commit,开发历史压平9
社区入口issues 关闭、不收外部 PR,反馈走 Discord 和 HackerOne15issues 和 PR 创建功能关闭16
开源完整性上传栈保留,trace 上传被 stub14Computer Use 仅占位符,native 核心库未放出9
第三方验证NxCode 数据面审计14ferstar 复核,信通院和绿盟审计但报告未公开2

社区讨论提出过可审计性的三要素:完整的提交历史、可复现构建(源码能编译出与官方分发一致的二进制)、公开的问题追踪入口9。对照这张表,两家一样都没给。

开源仍是唯一往前走的一步

批评完了,话要说回来。

闭源的时候,用户手里什么证据都没有。没有 ferstar 的取证,智谱 9 月 18 日那份致歉不会出现。没有 Cereblab 的抓包,Grok Build 的 5.1 GiB 上传到今天还在跑。闭源系统里,信任只能赌厂商自觉,而自觉在两起事件里都输了。

开源至少改变了举证结构。ferstar 复核代码后发现,检查点功能其实是纯本地调用 Git 命令做增量比对、元数据在本机,不依赖云端。这个发现反而推翻了官方”检查点回滚需要上传”的最初解释2。这种验证能力,闭源时代不存在。

后续动作也在往前走。智谱 MaaS 平台上线了”数据内容不留存”功能,承诺社区提及的代码数据没有留存、从未用于模型训练,还要建立常态化漏洞反馈机制、按严重程度给回报8。SpaceXAI 那边,开源后的 Grok Build 可以完全 local-first 运行,指向自己的本地推理4。

真正的考验在下一步:可复现构建、完整提交历史、公开问题追踪。这三样给出来,“开源”才从公关动作变成工程承诺。

参考来源

结语

两场风波的结局一样:厂商开源了代码,用户拿到了”可以审计”的资格。资格和能力是两回事。百万行代码没人读完,机构审计报告没公开,开源版和闭源版对不上。开源能证明现在,证明不了过去。下一次再有工具请求访问你的整个工作区,信不信任它,看你能亲手验证多少,看 README 没用。

Footnotes

  1. 智柴网 — Cereblab 用 mitmproxy 抓包证实 Grok Build 上传 5.1 GiB 的完整报道 https://zhichai.net/topic/178395179 ↩ ↩2 ↩3 ↩4 ↩5 ↩6

  2. 封面新闻(网易转载) — ZCode 事件调查:313MB 加密包、开关失效、3.14.0 修复、ferstar 复核、信通院与绿盟审计、智谱表态 https://www.163.com/dy/article/L7GIH3FN0514D3UH.html ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10

  3. Simon Willison — Grok Build 上传事件分析,含用户 SSH 密钥被上传报告与 SpaceXAI 删除数据承诺 https://simonwillison.net/2026/Jul/15/grok-build/ ↩ ↩2

  4. x.ai 官方公告 — Grok Build 开源公告,含 “build toward a robust and reliable harness” 表述 https://x.ai/news/grok-build-open-source ↩ ↩2 ↩3 ↩4

  5. GitHub: xai-org/grok-build — Grok Build 官方仓库,star 与 fork 数据 https://github.com/xai-org/grok-build ↩

  6. 界面新闻 — ferstar 取证 ZCode 上传工作区事件的报道 https://www.jiemian.com/article/15121635.html ↩ ↩2

  7. Hacker News — ZCode 上传事件原帖 https://news.ycombinator.com/item?id=49750694 ↩ ↩2

  8. 每日经济新闻 — 智谱致歉与后续:Repo Wiki 功能说明、数据不留存功能、漏洞反馈机制承诺 https://www.nbd.com.cn/articles/2026-09-21/4587856.html ↩ ↩2 ↩3

  9. 技术栈 — ZCode 开源仓库分析:2 个 commit 倒入 103 万行、开源版与闭源版区分、Computer Use 仅占位符、native 库未放出、可审计性三要素 https://jishuzhan.net/article/2102320027056394242 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10

  10. 七牛云 — ZCode 开源报道:一天内近 5000 star、Apache-2.0、无 release 无 tag https://news.qiniu.com/archives/1789970579947 ↩

  11. UpXuu — ZCode 静默上传取证与复现:上传链路、信封加密、隐私政策缺口、修复形态分析、HN 评论转述 https://upxuu.com/posts/zcode-silent-git-upload-forensics/ ↩ ↩2 ↩3 ↩4 ↩5

  12. AgentScout — Grok Build 开源与隐私风波报道,含 132 万行 Rust、77 个 crates 的仓库统计 https://agentscout.live/zh/tech/dev-tools/news/20260723-xai-grok-build-open-source-privacy-scandal/ ↩ ↩2

  13. Hacker News — Grok Build 开源事件讨论帖 https://news.ycombinator.com/item?id=48926590 ↩

  14. NxCode — Grok Build 开源数据面独立审计:上传栈保留、fail-open 谓词、二进制出处链缺失 https://www.nxcode.io/zh/resources/news/grok-build-open-source-data-plane-audit-2026 ↩ ↩2 ↩3 ↩4 ↩5

  15. Slow Signals (vocus) — Grok Build 治理结构分析:monorepo 快照、不收 PR、issues 关闭、第三方工具移植 https://vocus.cc/article/6a6571e5fd89780001880eb3 ↩ ↩2

  16. 蚁工厂(新浪转载) — 微博科技博主指出 ZCode 仓库 issues 和 PR 创建功能被关闭 https://www.sina.cn/news/detail/5345520728147920.html ↩