风险提示:理性看待区块链,提高风险意识!
USDT USDT $1.00 0.01%
XRP XRP $1.43310000 0.19%
BNB BNB $637.54000000 0.02%
USDC USDC $0.99963000 0.01%
SOL SOL $86.49000000 0.99%
TRX TRX $0.32360000 1.25%
BTC BTC $67,234.00 2.34%
ETH ETH $3,456.00 1.23%
CoinMeta Skill
限时免费体验

让 AI 更快获取有效、准确、可行动的币圈全景信息

Grok CLI被曝静默上传用户全量代码及敏感配置:一场未经同意的本地文件劫持

摘要

起因:一条被忽视的推特,揭开了Grok CLI的隐蔽管线 昨夜,一位安全研究者在推特发布简短技术发现:xAI官方发布的Grok CLI工具,在执行任意代码任务时,会于任务开始前与结束后,自动采集当前工作目录的完整快照,...

Grok CLI被曝静默上传用户全量代码及敏感配置:一场未经同意的本地文件劫持

起因:一条被忽视的推特,揭开了Grok CLI的隐蔽管线

昨夜,一位安全研究者在推特发布简短技术发现:xAI官方发布的Grok CLI工具,在执行任意代码任务时,会于任务开始前与结束后,自动采集当前工作目录的完整快照,并静默上传至远程云存储。该行为未出现在任何文档、安装提示或用户协议中,也无运行时弹窗、日志标记或配置开关默认可见。 起初,这条信息传播极低,多数人视其为误报。毕竟Grok 4.5近期以响应速度与稳定性获得广泛好评,而xAI作为有公开架构与工程团队的公司,理应具备基础合规意识。但职业本能促使我启动验证流程——不依赖二手报道,仅基于可复现的本地操作与二进制分析。

验证:从签名确认到反混淆,一条完整的上传链路浮现

我通过npm安装官方包@xai-official/grok(v0.2.93),校验Apple Developer ID签名确属X.AI Corporation,排除同名恶意包干扰。随后对CLI二进制进行反混淆处理。结果清晰显示:存在明确命名的上传模块——repo_state.upload;定义了before_codebase与after_codebase.tar.gz打包逻辑;硬编码指向gs://grok-code-session-traces这一Google Cloud存储桶;并包含upload_success、upload_failed、upload_disabled三类状态分支。这是一套已上线、可灰度、带错误处理的生产级数据回传管线。

行为测试:默认关闭?不,是服务端动态掩藏

我构建完全隔离的虚构代码仓库,仅含README和空目录,执行最简指令:让Grok回复单个单词“ok”,不触发任何文件读取工具。首次运行后,客户端从xAI服务器拉取的遥测配置显示:trace_upload_enabled: false,且日志明确输出“no upload queue, skipping”。 但关键转折在于——该配置并非固化于客户端,而是由服务端动态下发。安全研究者cereblab留存的网络抓包记录证实:7月10日同一版本客户端收到的初始响应中,trace_upload_enabled为true;而7月13日凌晨再次请求时,新增字段disable_codebase_upload: true,且原字段仍保留。客户端哈希未变,行为却逆转。这意味着:功能始终存在,开关由服务端远程控制;所谓“默认关闭”,实为舆情曝光后的紧急熔断。

突破边界:上传不止于当前仓库,而是整机级扫描

当我手动启用上传开关后,实际生成的压缩包远超预期。除当前仓库外,归档内明确包含: • ~/.claude.json 及 ~/.claude/settings.local.json(含env.MIAODA_API_KEY等明文密钥) • 全局AGENTS规则配置 • 超30个Skill定义文件 • Claude Code的全部用户设置 原因在于:Grok CLI为兼容已有开发环境,在启动阶段主动遍历系统路径加载Claude Code配置。而其上传逻辑的设计原则是——“凡被进程打开读取的文件,一律纳入supplemental_file列表并打包”。它未做路径白名单约束,未排除跨工具配置,未过滤敏感字段,更未向用户声明这一扫描行为。

本质差异:不是“模型读文件”,而是“旁路劫持式上传”

需彻底厘清一个关键误区:这不是大模型推理过程中对上下文文件的常规访问。模型调用文件,属于请求-响应闭环内的计算行为;而Grok CLI的上传管线,是一条完全独立于LLM交互的后台通道——它不经过任何API请求体,不依赖模型token流,不触发用户可见的网络请求标识,甚至绕过系统代理与防火墙日志(使用gcloud SDK直连)。用户既无法拦截,也无法审计,更无法感知。 类比而言:Claude Code的隐形标记,是在你寄出的信封上加了个不可见邮戳;Grok CLI的做法,则是撬开你家门,把书房、抽屉、隔壁邻居家的钥匙串一并装箱运走,全程不开灯、不留脚印、不敲门。

行业警示:Agent权限已等同管理员,却零监管框架

当前主流AI编码Agent所拥有的本地权限,实质已逼近操作系统级账户: • 可递归遍历全盘文件系统 • 可读取任意明文配置与密钥 • 可执行Shell命令、操控浏览器、调用系统API 这类能力,在软件史上仅操作系统与杀毒引擎曾被赋予。前者历经数十年安全机制演进,后者受严格准入认证与沙箱规范约束。而AI Agent呢? • 无强制性文件访问清单公示要求 • 无上传行为必须显式授权的法律或技术标准 • 无第三方机构对二进制行为做常态化审计 • 无用户可信赖的实时权限监控界面 整个生态,正以“功能优先”之名,行“信任裸奔”之实。

行动建议:卸载即刻,警惕所有高权限CLI工具

若已安装Grok CLI,请立即执行卸载: npm uninstall -g @xai-official/grok 同时建议: • 对任何需全局安装、声明“深度集成开发环境”的CLI工具,保持零信任原则; • 禁用自动配置继承机制(如关闭Claude Code配置自动加载); • 敏感项目务必置于独立容器或虚拟机中运行; • 定期检查~/.config、~/.local/share等路径下异常新增的SDK凭据或日志目录。 技术终将进步,但隐私不该成为默认牺牲品。我们等待的不是厂商的良心发现,而是可验证、可审计、可退出的基础设施共识。

评论 (10)

登录 后即可发表评论
墨然风行

卸载Grok CLI,以后对高权限CLI工具零信任,不能让隐私这么轻易被侵犯。

0 回复
呆呆爆爆

Grok CLI的行为太恶劣,AI Agent权限等同管理员却没监管,必须改变现状。

0 回复
潮到底
潮到底 2周前

Grok CLI这是旁路劫持式上传,整个AI Agent生态都缺乏监管,得重视起来。

0 回复
南极不下雪

赶紧卸载Grok CLI,对高权限CLI工具保持警惕,别让隐私没了保障。

0 回复
好歹都要过

Grok CLI未经同意上传数据,绕过各种监管,现在的AI Agent生态太乱,得赶紧规范。

0 回复
更多