你的代码没泄露?Grok Build 默认上传那个坑,连 Anthropic 都不敢踩
你的代码没泄露Grok Build 默认上传那个坑连 Anthropic 都不敢踩Gigazine 今早炸了一篇报道——标题直接怼脸SpaceXAI 的 Grok Build 一直在往服务器传代码默认就是开着的。我读完脊背发凉不是因为它新是因为我昨天刚写过。在上一篇Grok Build 开源了里我建议大家去翻源码看 extension system还强调你终于有机会看清黑盒——好吧现在黑盒直接自己爆开了黑盒里面就装着你传上去的代码。Musk 今天下午被迫承认措辞还是那种经典的我们一直在优化体验。措辞下面的事实却很硬Grok Build 从第一天起就默认把用户的编码数据上传到 SpaceXAI 服务器。你说你关了他们说你关了他就认——可他默认就是开的。一、那个默认开启的上传到底传了什么Gigazine 扒出来的信息量很大但核心就一段Grok Build 的 CLI 里埋了一个 Telegraf 监控代理负责把编码过程中产生的数据打包上报。代码片段、diff、错误堆栈——只要你没主动关掉全自动往外吐。Telegraf 这个角色大家应该熟Metrics 采集器。Grok Build 拿它当数据管道把用户在 terminal 里的一举一动变成一条条打点日志推回 SpaceXAI 的后台。名义上是改善产品体验——潜台词是你的代码就是训练素材。这事有一个特别容易被忽略的点Grok Build 是闭源 beta。用户在用的 5 月到 7 月这段时间没有一个人能去翻源码确认你到底传了什么。这和 Anthropic 的 Claude Code 正好反着——Claude Code 从第一天就开在 GitHub 上所有数据流向社区都能审计。闭源 默认上传 用户只能靠厂商自己说。更让人不安的是上传内容的粒度。根据 Gigazine 对早期 beta 用户的采访Telegraf 上报的不只是你执行了什么命令这种元数据——它会把命令的输出、报错信息、甚至部分代码片段一并打包。也就是说你在 Grok Build 里调试一段涉及数据库连接串的代码那段连接串可能已经躺在 SpaceXAI 的日志服务器上了。二、SpaceXAI 三次回应三次打自己脸看看 SpaceXAI 官方博客的时间线——5 月首发博客里埋了一行小字说可选择退出数据上传 (opt-out)。注意用词可选择退出。翻译成人话就是默认不退。没有弹窗没有高亮没有首次启动的确认对话框。7/13 Gigazine 报道当天SpaceXAI 紧急改口说其实我们用的是 zero data retention (ZDR)。ZDR 是 Anthropic 先提的——意思是你传的数据不留存、不训练、你们走了就删。但你仔细看 SpaceXAI 的措辞从一开始就尊重 ZDR——从头到尾没承认数据确实上传过只是说我们删了。7/13 晚更进一步承认上传功能默认开启并把默认状态改为关闭。注意这是被记者追着打之后才改的不是在第一个用户投诉时就改的更不是在设计阶段就规避的。三次回应三连套先淡化→再甩锅 ZDR→最后被迫改默认。每一步都是把我们已经做的事情重新包装成我们一直在做的事情——危机公关的标准范式。我特别想追问一句如果 Gigazine 没挖出来SpaceXAI 打算什么时候主动承认答案是永远不会主动承认——因为用户根本不知道数据被上传了没有任何动力去问这个问题。这就是默认开最可怕的地方它利用的不是用户的许可而是用户的无知。更值得警惕的是Grok Build 不是孤例。过去一年里我至少见过三款 AI 工具用同样的套路——默认开启数据上报、把开关藏在 CLI 参数深处、被曝光后才紧急改成默认关。这不是个别公司的道德问题这是整个 AI 工具行业的结构性惯性先拿数据再谈合规。这种惯性背后有一个冰冷的事实AI 模型的护城河不是参数量是数据飞轮。谁先拿到 100 万个真实 coding session 的日志谁的下一代模型就更懂开发者。Grok Build 默认上传的本质就是用免费工具换训练数据——用户以为自己在白嫖其实自己就是产品本身。三、和 Codex / Claude Code 对比差距在哪我直接做了一张横向对比——下表是我这周实际用三款工具 读官方文档查来的。维度Grok BuildClaude CodeOpenAI Codex源码是否开放直到 7/15 前全闭源MIT 开源自始至终部分开源数据上传默认值默认开7/13 后才改默认关闭默认关闭仅遥测可选退出机制首次无提示CLI 隐藏开关/toggle 显式开关设置面板明文选项ZDR 承诺被追打后才承认第一天就写进 ToS第一天就写进 ToS本地优先否必走云推理支持本地模型配置仅走 API用户审计路径无闭源 beta 期间任何人都可翻源码部分可审计表已经说得很清楚Anthropic 和 OpenAI 敢把默认关闭 ZDR写在第一天是因为他们把选择权真真切切地交给了用户SpaceXAI 是先把事情做了再在被发现后给用户一个可以关掉的选项。这不是技术差距是默认值的差距——默认值背后是立场的差距。下面这张图把三款工具的数据流向画出来了——你可以一眼看出 Grok Build 那条默认上传的线有多刺眼。四、为什么开发者还在往火坑里跳这里我想说一点不舒服的真相。Grok Build 事件出来之后我刷了一遍社区讨论发现一个很反直觉的现象骂得最凶的人往往也是冒险在用 beta 版的生产人。为什么三个驱动力——第一模型宣传太诱人。Grok 4.5 benchmark 创纪录Plan mode 自动规划任务——对一个天天跟 deadline 赛跑的工程师这些标签的引力远大于角落里那行默认开启数据上传。人在被性能承诺吸引时风险敏感度会自动打折。第二我用的是副项目代码的错觉。几乎每个用户都这么想——我 Grok Build 里跑的不是核心业务代码传了又怎样。但真正写代码的人都清楚副项目里的代码片段往往藏着架构思路、接口命名、业务逻辑的组织方式——这些才是最值钱的部分。第三信任品牌的光环。SpacexAI Musk这个组合在很多人眼里自带技术领导滤镜。领导者的产品让用户不自觉地放松审计意识。Anthropic 就聪明它把自己绑在安全这个标签上让用户天然带着警惕去用它——结果用起来反而更踏实。这不是受害者有罪论这是一次很典型的人机信任错位我们把技术领先和道德可靠混为一谈。五、5 分钟自检你的 AI 工具在偷传什么我写了一段脚本能帮你即时检查新装 AI CLI 工具的网络流量方向。它不是银弹但它能让你第一次装工具的那一晚就发现端倪。#!/usr/bin/env python3 ai_tool_sniffer.py — 监控 AI CLI 工具的网络出站检测是否意外上传代码 import subprocess, sys, time from datetime import datetime def monitor_process(proc_name: str, seconds: int 30): 监控指定进程 name 的出站连接仅 macOS / Linux # macOS: 用 nettopLinux: 用 ss grep print(f[*] 在 {seconds}s 内监听 {proc_name} 的出站流量...) print(f[*] 请在另一个终端里使用 {proc_name}让它自然运行命令) cmd [nettop, -P, -L, 1, -k, state] proc subprocess.Popen(cmd, stdoutsubprocess.PIPE, textTrue) outgoing set() start time.time() try: for line in proc.stdout: if time.time() - start seconds: break if proc_name.lower() in line.lower() and Established in line: parts line.split() if len(parts) 3: dst parts[2] if any(k in dst for k in [api., ingest., telemetry., metric.]): outgoing.add(dst) finally: proc.terminate() print(f\n 检测完成 {datetime.now().strftime(%H:%M:%S)} ) if not outgoing: print([] 未发现遥测 / 数据上传域名在测试窗口内) return print(f[!] 发现 {len(outgoing)} 个疑似遥测域名) for d in sorted(outgoing): print(f → {d}) print(\n建议) print( 1. 去官方文档搜 telemetry / data collection) print( 2. 找 opt-out 开关环境变量 / 配置文件) print( 3. 找不到就默认不信任换工具) if __name__ __main__: target sys.argv[1] if len(sys.argv) 1 else grok monitor_process(target, seconds30)用法很简单新开一个终端跑python ai_tool_sniffer.py grok然后在另一个终端里正常使用 Grok Build 做点事情——30 秒后脚本会列出所有连出去的域名。看到 telemetry / ingest / metric 开头的域名就该警觉了。当然这招对闭源工具只能看到域名看不到内容。但能看到谁在传已经比完全不知道强一个量级。你不需要成为安全专家你只需要在装工具的第一晚多跑一条命令。另外还有一个更粗暴的兜底把 AI CLI 工具放进 Docker 容器只给它挂载当前项目目录不给它访问 ~/.ssh、~/.aws、~/.gnupg 的权限。这样即使它想传也传不出你的密钥。我把这套自检流程整理成一个 checklist每次装新 AI 工具都会过一遍——查源码工具是否开源不开源就默认不信任查默认值数据上传默认开还是关默认开就改配置查 ZDR有没有 zero data retention 承诺没有就假设数据会被训练查退出路径opt-out 开关藏在哪找不到就换工具跑流量监控装完第一晚跑一次 sniffer看有没有可疑域名隔离执行敏感项目放进 Docker限制文件系统访问权限六、从 Grok Build 追问AI 工具的默认值到底该由谁定这次事件让我反复想一个问题AI 工具的默认值到底是产品决策还是伦理决策表面上默认开启数据上传是一个产品选择——降低新用户的上报门槛让团队更快拿到反馈。但当你把代码这个特殊数据类型放进来它就不再是产品问题——代码是开发者最核心的知识产权。默认开启上传等于默认把用户最值钱的东西让渡出去。Anthropic 的 Claude Code 做了一个很好的示范默认关闭上传但把 ZDR 写进 ToS把审计路径交给开源社区。这不是不会做上传是主动选择不做。OpenAI 的 Codex 也是类似路线——默认关闭用户主动选择才开。反观 SpaceXAI它不是技术上做不到默认关闭——7/13 之后它不就改了吗它只是在默认开的这段时间里已经拿到了足够多的数据。这才是让人最不舒服的地方不是不能改是改之前已经吃够了红利。我无意把 SpaceXAI 钉在耻辱柱上——Grok Build 开源本身是一件好事它让社区终于能审计这个黑盒。但开源不能成为先上车后补票的借口。你不能用我们后来开源了来为我们之前偷传了辩护。这件事给所有 AI 工具开发者提了一个醒默认值不是产品细节是立场声明。你默认开什么就代表你默认用户愿意让渡什么。而对我们这些每天用 AI 写代码的人来说提醒更简单——装任何新 AI 工具的第一晚先跑一遍流量监控再决定要不要把它接进生产项目。这不是 paranoid这是基本功。

相关新闻

【抓包实战】进阶:Charles 配置手机抓包 HTTPS 及疑难问题排查

【抓包实战】进阶:Charles 配置手机抓包 HTTPS 及疑难问题排查

1. Charles 抓包 HTTPS 进阶配置当你已经完成 Charles 的基础代理设置和证书安装后,抓包 HTTPS 请求时可能还会遇到各种"拦路虎"。最常见的就是请求显示为"unknown"、证书无效提示,或者某些 App 顽固地拒绝被捕获数据。这些问题往往…

2026/7/16 21:19:10 阅读更多 →
C语言内存管理与多线程编程实战:游戏化项目开发指南

C语言内存管理与多线程编程实战:游戏化项目开发指南

1. 先搞清楚这个标题到底在说什么看到“C 语言大师齐聚,固定幻变肘击大乱斗”这个标题,第一反应可能是“这到底是个编程比赛、游戏模组还是某种技术挑战?”经过实际测试和资料梳理,这其实是一个结合了 C 语言编程实战和格斗游戏机…

2026/7/16 21:17:09 阅读更多 →
国际站运营进阶-标题的精准布局与系统化提效

国际站运营进阶-标题的精准布局与系统化提效

1. 标题为什么是国际站运营的第一道门槛刚入行做国际站运营那会儿,我最常遇到的困惑就是:明明产品发了几百个,怎么流量就是上不去?后来才发现,90%的问题都出在标题上。你可能不知道,买家在搜索结果页看到你…

2026/7/16 21:15:09 阅读更多 →

最新新闻

电脑维修行业的内幕,你知道几个?

电脑维修行业的内幕,你知道几个?

电脑出故障本就让人烦躁,要是再遇上不规范维修,钱财、设备双重受损。整个维修行业,不少商家靠着硬件信息差、用户着急的心理牟利,整套牟利流程早已形成固定套路。第一阶段:预约环节预埋陷阱很多坑从你线上预约维修时就…

2026/7/16 23:47:58 阅读更多 →
华为MetaERP Oracle EBS 和 Oracle Fusion 在 PO(采购订单)接收环节中,PPV、IPV、不可抵扣税、汇率变化 四大业务场景的会计核算详细分析,配合具体数据举例说明分录

华为MetaERP Oracle EBS 和 Oracle Fusion 在 PO(采购订单)接收环节中,PPV、IPV、不可抵扣税、汇率变化 四大业务场景的会计核算详细分析,配合具体数据举例说明分录

Oracle EBS 和 Oracle Fusion 在 PO(采购订单)接收环节中,PPV、IPV、不可抵扣税、汇率变化 四大业务场景的会计核算详细分析,配合具体数据举例说明分录。前置知识:Oracle EBS/Fusion 采购接收的核算框架Oracle EBS 和 …

2026/7/16 23:47:58 阅读更多 →
Full Conversion

Full Conversion

在计算机科学、系统设计以及软件工程中,Full Conversion(全量转换 / 完整转换) 是指将数据、系统架构、代码库或文件格式,从旧的形态一次性、彻底地完全迁移或转换到新的形态。 它与“增量转换(Incremental Conversion…

2026/7/16 23:45:58 阅读更多 →
终极指南:如何判断guided-diffusion扩散模型训练是否收敛

终极指南:如何判断guided-diffusion扩散模型训练是否收敛

终极指南:如何判断guided-diffusion扩散模型训练是否收敛 【免费下载链接】guided-diffusion 项目地址: https://gitcode.com/gh_mirrors/gu/guided-diffusion 你是否曾经花费数天时间训练扩散模型,却不知道何时该停止?想象一下&…

2026/7/16 23:41:56 阅读更多 →
IFC++:C++开源库实现BIM数据处理与可视化开发指南

IFC++:C++开源库实现BIM数据处理与可视化开发指南

1. 项目概述:IFC是什么,以及为什么你需要它如果你正在建筑、工程或施工(AEC)领域工作,或者对建筑信息模型(BIM)的数据处理感兴趣,那么你很可能听说过IFC文件。IFC,全称工…

2026/7/16 23:39:56 阅读更多 →
C++ Builder XE10演示项目:从RAD开发到多线程实战全解析

C++ Builder XE10演示项目:从RAD开发到多线程实战全解析

1. 项目概述:为什么需要一个“演示项目”?如果你是一位刚从Visual Studio或者Qt Creator转战到C Builder XE10的开发者,或者你是一位想快速评估这个IDE是否适合团队新项目的技术负责人,那么你很可能和我当初一样,面对一…

2026/7/16 23:37:55 阅读更多 →

日新闻

HarmonyOs应用《重要日》开发第6篇 - 数据持久化存储

HarmonyOs应用《重要日》开发第6篇 - 数据持久化存储

本篇深入剖析 ImportantDays 项目的数据持久化方案——基于 HarmonyOS ArkData 模块的 Preferences 轻量级存储,以及 PreferenceUtil 工具类的单例封装。一、HarmonyOS 数据存储方案对比 HarmonyOS 提供了多种数据存储方案:方案适用场景特点Preferences轻…

2026/7/16 0:08:27 阅读更多 →
Python实现跨境电商商品图批量翻译教程

Python实现跨境电商商品图批量翻译教程

一、问题引入做跨境电商的卖家朋友,你是否遇到过这样的困扰?每次上架新品到亚马逊、Shopee或Lazada等平台,都需要处理大量商品图片的多语言版本。比如上架200款衣服,每款需要翻译成英语、日语、韩语等5种语言,这意味着…

2026/7/16 0:08:27 阅读更多 →
鸿蒙 7 新特性实战①:从 0 到 1 掌握 @kit 标准导入规范

鸿蒙 7 新特性实战①:从 0 到 1 掌握 @kit 标准导入规范

从鸿蒙 7(HarmonyOS NEXT)开始,官方全面完成了从 ohos.* 零散模块到 kit.* 领域套件的体系重构。对开发者来说,第一道门槛不是 API 用法变化,而是统一的导入规范——旧体系默认导入、解构导入混用的混乱局面被彻底终结…

2026/7/16 0:10:29 阅读更多 →

周新闻

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨 在一个阳光明媚的上午,互联网大厂的面试官坐在桌前,准备迎接他的面试候选人——燕双非,一个以搞笑和幽默著称的程序员。第一轮提问 面试官:燕双非,作…

2026/7/15 21:09:01 阅读更多 →
车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估在智能驾驶和车联网技术快速发展的今天,车载以太网作为新一代车载网络的核心传输技术,其物理层性能直接决定了数据传输的可靠性和稳定性。1000BASE-T1作为当前主流的…

2026/7/15 19:42:20 阅读更多 →
VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战指南嵌入式开发领域正经历一场工具链的静默革命。当传统Keil用户首次打开VSCode的扩展市场搜索EIDE时,往往会惊讶于这个看似简单的插件竟能重构十余年的开发习惯。本文将揭示如何用五个精准步骤&#xff0…

2026/7/16 23:40:37 阅读更多 →

月新闻