# Grok CLI 被曝静默上传整个代码库及 Claude Code 配置，导致 API 密钥泄露

- 来源：数字生命卡兹克 (@Khazix0918)
- 发布时间：2026-07-13 11:09
- AIHOT 分数：80
- AIHOT 链接：https://aihot.virxact.com/items/cmrinwb3900yebilkxv3esdnc
- 原文链接：https://x.com/Khazix0918/status/2076504273282908170

## AI 摘要

安全研究者发现，xAI 的 Grok CLI（npm 包 @xai-official/grok v0.2.93）会在用户不知情时，将整个项目代码库压缩为 tar.gz 并上传至 xAI 的 Google Cloud 存储。验证显示，即使模型仅回复一个单词且未调用文件工具，CLI 仍会上传代码快照、会话记录及配置。更严重的是，上传包还跨项目扫描了 Claude Code 的配置文件（~/.claude.json、settings.local.json），导致 API 密钥泄露。xAI 在曝光后通过服务端远程开关静默关闭了上传功能，但代码管线仍保留。作者建议立即卸载 Grok CLI。

## 正文

http://x.com/i/article/2076503226166444032

# 我只让Grok回复一个单词，它就把我整个代码库都偷走了。

之前写过一篇Anthropic偷偷在Claude Code中植入了隐形代码，来识别是不是中国用户的事，然后爆掉了，大家看的特别多。

后面国家还特意强调提醒了一下这个事。

但是我想说，没想到今天，更离谱的来了。

这次的主角是Grok。

xAI的官方Grok CLI，会在你用它写代码的时候，在你完全不知情的情况下，把你整个项目的代码仓库打包上传到xAI的云端服务器。

注意，我说的不是模型读了你的文件来回答问题这种非常正常的行为，是极度狗的开了另一条你根本看不见的通道，把你的整个代码库直接压缩成tar.gz，然后偷偷的上传到他们自己的一个叫gs：//grok-code-session-traces的Google Cloud仓库里。

而且不只是代码。

在我的亲手验证中，他居然，直接跨了我的项目库，还把我电脑上Claude Code的配置文件一起传了上去，甚至，包括了我的某个API密钥。。。

我整个人都懵逼了，我去验证的时候，还特意是让Codex直接伪造了一个合成仓库去验证的，没想到这个狗东西，不仅把整个合成数据库给搬空了，还直接把我的.claude整个配置全部搬走了，我真的不知道该说啥好了。

马斯克大哥，你平时狗一点就算了，为了偷数据，现在都这么不择手段了吗？？？

先说这件事的起因。

昨天晚上，推特上有个博主发了一条帖子，说有人逆向了Grok CLI之后，发现了一个极其离谱的机制。他的原话大概是，Grok CLI会在每一轮任务开始前和结束后，各打包一次你当前工作目录的完整状态，然后静默上传到xAI控制的远端存储。

因为这个帖子浏览量巨低，我当时第一反应是不至于吧。

因为Grok 4.5这两天口碑很好，速度直接快到飞起，我自己也在体验，虽然GPT-5.6 Sol这几天实在过于量大管饱了，Grok 4.5在我这没啥出场机会，但是我当时还是觉得，估计又是啥博眼球的假新闻。

毕竟xAI再怎么样也是一家正经公司，不可能做这种事。

但是职业习惯，我还是把这个事，进行了一遍验证。

我直接就上Codex了，先装了xAI官方的npm包@xai-official/grok，版本0.2.93，确认了Apple签名属于X.AI Corporation，排除了社区同名包的干扰。

然后反混淆了二进制文件。

打开的瞬间我就知道，这事肯定是真的了。

二进制里赫然写着repo_state.upload、before_codebase、after_codebase.tar.gz、gs：//grok-code-session-traces，以及上传成功、上传失败、上传禁用的完整执行分支，这尼玛是一条完整的、生产级的上传管线。

但是秉持着对老马剩余的那一点信心，我觉得说，字符串存在不代表它一定在跑对吧，所以，我还需要验证的是，它默认到底会不会触发。

然后呢，我就去建了一个隔离测试仓库，里面全是虚构的假数据，不碰任何真实项目。

然后，用这个仓库跑了一次最简单的Grok任务，让模型只回复一个单词，不调用任何工具。

结果很有意思。

我的账号从xAI服务器拿到的远程配置是「遥测开启，但代码快照上传关闭」。也就是说，默认运行没有上传我的仓库，日志里明确记录着：没有上传队列，跳过。

然后，我手动把上传开关打开了，想验证这条管线到底能不能跑通、它具体会收走什么。

这一开，天就塌了。

即使模型没有调用任何文件读取工具，Grok CLI仍然成功上传了before_codebase.tar.gz和after_codebase.tar.gz（也就是我的代码库的之前的状态和AI介入之后的状态），加上会话状态、对话记录、配置和日志。

全部传到了xAI的谷歌云仓库上。

但真正让我血压飙升的，是上传包里的内容远远超出了当前仓库的范围。

它不仅传了仓库里的代码，还传了仓库之外的东西。我的~/.claude.json、我的Claude Code设置文件、我的全局AGENTS规则、我的30多个Skill文件，全部被标记为supplemental_file（也就是补充上下文文件），一起塞进了上传包。

Grok CLI为了兼容Claude Code，在启动的时候会主动扫描你电脑上Claude Code的配置文件，让你不用重新设置就能继承Claude Code的环境，这个功能本身还算贴心。

但问题是，他们这个离谱的收集器的设计逻辑是，只要Grok在运行过程中读取了某个文件，就把完整文件收进上传包。

也就是说，它根本没有把边界限制在当前仓库，也没有把别家工具的敏感配置排除在外，只要我读到了，你的所有东西，都是我的。

然后事情变得更糟。

我检查了被上传的文件列表，发现我的~/.claude/settings.local.json里面有一个env.MIAODA_API_KEY字段。

这个Key是我的百度秒哒的一个Skill的key，直接就被泄露了，送到了xAI的云盘里。

我没有主动给Grok任何密钥，我甚至没有让Grok读取任何文件。

我只是让它回复一个单词，但因为它在启动时自动扫描了Claude Code的配置，而收集器又把所有读取过的文件一股脑打包上传，我的所有的东西，就这么成了未来Grok的一部分了。

然后，更离谱的事来了。

大家还记得我今天说的是，它的代码都是齐全的，但是默认是不上传的，我硬生生手动把开关打开了，后续才有了所有上传的操作。

你可能会说，那不就是你贱吗，你自己打开的，那怪谁啊。

但是我想说的是，但凡我早两个小时测，你可能就会发现，根本没有什么开关这回事，这玩意默认就是打开的。

这个安全研究者cereblab，应该是第一个发现这件事的，他不仅抓了包，还做了一个复现仓库，保存了完整的网络请求记录。

但关键转折是他保存的一份7月13号的xAI服务器响应。里面同时出现了两个字段，trace_upload_enabled等于false，以及一个新增的disable_codebase_upload等于true。

而他最初抓包的时候，同一个0.2.93版本的客户端，收到的配置是trace_upload_enabled等于true。

客户端没有更新，二进制哈希完全一样，但行为变了。

只有一个解释，xAI通过服务端远程开关，在这个博主曝光之后，悄悄把上传功能关掉了。

时间线大概是这样的。

7月10号，cereblab抓到默认上传行为。

7月12号晚上，另一个博主mylifcc发帖公开了同样的发现，帖子迅速传播。

7月13号凌晨，cereblab发现xAI服务端新增了disable_codebase_upload字段，上传被远程关闭，但是所有的配置都留下来了，后面其实也是可以无感开启。

这个操作本身就说明了一切。

如果这个功能是合理的、经过用户知情同意的，你为什么要在被曝光之后偷偷关掉呢？如果你觉得没问题，你应该站出来解释说"哦这是我们的trace诊断功能，用户可以选择开启或关闭，数据仅用于XX用途"对吧。

但他们选择了静默关闸。

这意味着xAI自己也清楚，这件事尼玛根本见不得光。

因为这真的就是我整个见过的最离谱的事了。

Claude Code做的事情是，在系统提示词里用一个不可见的Unicode字符给你的请求打分类标记，人贱是贱，但是它至少目前没有采集你的代码，没有上传你的文件，没有碰你的密钥，核心问题在于它偷偷做、不告诉你，就是尼玛的纯恶心你。

但是Grok CLI做的事情是，把你的整个代码仓库打包上传到远端服务器，连带你电脑上其他工具的配置文件和API密钥，通过一条独立于模型请求的旁路通道，在你完全不知情的情况下完成。

用形象的话比喻就是。

一个是在你的外卖订单上偷偷贴了个小标签。

一个是把你家钥匙复制了一把，还顺带着把你邻居家的钥匙也一起顺手牵羊一起顺走了。

真的太离谱了，Agent确实越来越发达，能做的事也越来越多。

但这也确实代表着，你的隐私几乎就是裸奔，全看对面的良心。

Claude Code能执行你的Shell命令，Grok CLI能扫描你的整个文件系统，Codex能操控你的浏览器。一个Agent产品它们现在拥有的权限，已经跟你电脑上的一个管理员账户没有太大区别了。

这个权限量级，在整个软件行业的历史上，只有操作系统和杀毒软件享受过。

但操作系统有几十年的安全审计体系，杀毒软件有行业认证和监管框架。

AI Agent有什么。

什么都没有。

没有一个行业标准规定AI Agent必须公开它在本地读取了哪些文件，没有一个规范要求Agent的上传行为必须经过用户的显式同意，没有一个第三方机构在审计这些工具到底在你的电脑上干了什么。

整个行业，现在是在裸奔。

也是挺悲哀的。

最后说一句，如果装了Grok CLI的，赶紧卸载。

能卸多快，就卸多快。

希望有一天，我们不再需要靠逆向二进制文件，才能知道自己的工具在背后做了什么。

那一天到来之前，保持警觉。
