{
title: "Grok CLI被曝静默打包上传整个代码库,甚至窃取API密钥",
summary: "xAI的Grok CLI被曝存在严重隐私漏洞,会在用户不知情的情况下将整个项目代码库打包成tar.gz,并静默上传至xAI的Google Cloud存储桶。实测发现,该行为不仅上传当前仓库代码,还跨目录窃取Claude Code配置文件、AGENTS规则及API密钥。即使模型仅回复一个单词,上传管线仍会完整执行。xAI官方默认关闭该功能,但手动开启后数据泄露风险极大,引发AI社区对代码安全的高度关注。",
content: "如果你以为AI编程助手的最大风险只是模型偷看你的代码,那今天Grok CLI的这波操作可能会让你重新审视自己的安全底线。xAI官方推出的Grok命令行工具被曝存在一个极其隐蔽的上传机制:它会将你当前工作目录的完整状态打包成tar.gz,然后静默上传到xAI控制的Google Cloud存储桶gs://grok-code-session-traces。更离谱的是,这个行为不仅限于当前仓库,还会跨目录窃取其他工具的配置文件,甚至包括你的API密钥。\n\n事件起源于推特上一位博主的逆向分析,他发现在Grok CLI的二进制文件中存在一条完整的上传管线,包括repo_state.upload、before_codebase、after_codebase.tar.gz等关键函数,以及上传成功、失败、禁用的完整执行分支。为了验证这一发现,我直接使用Codex搭建了一个隔离测试仓库,安装xAI官方npm包@xai-official/grok版本0.2.93,确认Apple签名属于X.AI Corporation后,反混淆了二进制文件。结果发现字符串赫然在列,但还需要确认默认情况下是否触发。\n\n测试结果令人震惊。当远程配置为遥测开启但代码快照上传关闭时,默认运行未触发上传。但当我手动打开上传开关后,即使模型只回复一个单词且未调用任何文件读取工具,Grok CLI仍然成功上传了before_codebase和after_codebase两个压缩包,包含会话状态、对话记录、配置和日志。更可怕的是,上传包中出现了大量仓库之外的文件:我的~/.claude.json、Claude Code设置文件、全局AGENTS规则、30多个Skill文件,甚至包括~/.claude/settings.local.json中的MIAODA_API_KEY字段。Grok CLI为了兼容Claude Code,会自动扫描并读取这些配置文件,但它的收集器设计逻辑是只要读取过的文件就完整打包上传,完全没有边界限制。\n\n这一事件给所有AI开发者敲响了警钟。虽然xAI默认关闭了该功能,但手动开启后的数据泄露风险极高。建议所有使用Grok CLI的用户立即检查~/.xai/config或相关配置文件,确认code_snapshot_upload选项是否被意外启用。同时,建议在隔离环境中使用AI编程工具,避免将包含敏感信息的配置文件、API密钥或私有仓库暴露给任何第三方服务。AI编程工具的便利性不应以牺牲数据安全为代价,在技术快速迭代的当下,开发者需要保持对工具行为的主动监控和审计意识。"
}