一个自称能帮程序员省时间的AI编程工具,最近却让不少程序员彻夜难眠。9月18日凌晨,独立开发者ferstar在技术论坛发帖称,自己电脑里躺着一个313MB的加密压缩包,里面几乎是他一个10G商业项目的全部核心资产。
这个压缩包只因上传失败了564次,才侥幸留在了本地。这个工具就是智谱旗下的AI编程客户端ZCode,事情曝光后迅速发酵,如今已从"偷传数据"升级为更敏感的"数据是否出境"之问。
偷传的秘密:一份"仓库百科"背后的全量拷贝
ferstar逆向分析ZCode客户端后发现,只要用户处于登录状态,客户端就会静默生成工作区快照,内容包括完整的Git版本历史、LFS缓存和reflog,本地加密后自动传向阿里云OSS。
更值得警惕的是,加密用的RSA公钥由服务端下发,打包好的加密文件连用户本人和客户端自己都无法解开。
文章发布后,多名用户按图索骥成功复现,确认这一机制并非个案。智谱当天下午在用户群中致歉,解释问题出自"代码库索引"功能,该功能原本用于支持会话检查点恢复、历史回退和Repo Wiki(仓库百科)。
智谱表示,Repo Wiki生成页面时会触发数据上传,该功能上线初期默认开启,才导致部分用户"被上传"。智谱承诺数据在云端生成后会"立即销毁",并宣布将开源ZCode代码库接受第三方审查。
数据去哪了:新加坡主体浮出水面
道歉没能平息质疑,反而引来了更硬核的技术取证。太原承明科技9月19日晚公开发函称,自查发现8月28日到9月14日间,公司超过6个工作区被ZCode打包上传云端,最大一个体积达391.94MB。
承明科技还指出,被打包的内容远不止官方所说的"代码片段",而是结构完整的归档文件,涵盖完整源代码、含已删除提交的版本控制历史、数据库口令、接口密钥、云服务凭证,甚至员工与用户的个人信息。
真正让事件升级的,是承明科技追出的一条数据流向线索。ZCode客户端的全部网络请求都指向zcode.z.ai与cdn-zcode.z.ai域名。
而这两个域名背后的运营主体JINGSHENG HENGXING TECHNOLOGY PTE.LTD,注册地正是新加坡。
据智谱港交所招股书披露,这家公司是智谱2023年11月在新加坡设立的间接全资子公司。英文版ZCode协议明确由这家新加坡主体负责数据处理,但中文版协议写的却是"北京智谱华章科技股份有限公司",两套说法出现明显错位。
更微妙的是,中文版隐私政策白纸黑字承诺,境内运营产生的个人信息存储于中国境内,不做跨境传输,如需跨境须提前告知并取得用户同意。这正是承明科技追问的焦点:数据到底有没有出境,谁又该为此负责。
追责清单:十一项诉求和十月十日的期限
在公开函件中,承明科技一口气列出十一项要求,涵盖停止相关数据处理、删除已上传数据及缓存备份、披露数据处理和访问记录等核心诉求。
公司还要求智谱说明数据是否曾与第三方共享、是否被用于模型训练,并提供相应的删除证明,同时明确表示保留进一步追究法律责任的权利。承明科技把书面回复的最后期限定在了10月10日。
截至发稿,智谱尚未就这份函件公开回应,但ZCode已在9月19日更新至3.14.0版本,更新日志中写明"修复仓库百科异常上传的问题",算是给出了一个技术层面的回音。
信任的代价:AI编程工具越界的红线在哪
这起风波之所以刺痛人心,是因为它戳中了程序员最看重的东西——代码就是命根子。一个默认常开、界面上找不到关闭开关的上传机制,等于把用户的议价权提前收走了。
AI编程工具要读懂代码库、理解项目历史,本是提升效率的正当需求,但"读懂"和"整包搬走"之间,隔着一道不该被悄悄跨过的边界。
当加密密钥握在服务商手里、用户自己都解不开数据时,"隐私保护"这四个字就成了一句空话。
这场风波最终会以怎样的方式收场,还要看智谱能不能拿出经得起第三方审查的答案,但它已经给整个行业提了个醒:数据出不出境、去了哪里、谁能看,这些问题不该等用户自己去逆向工程才能知道答案。
