针对此前社区关于 ZCode“偷偷上传代码”的质疑,官方已于 9 月 21 日正式在 GitHub 全量开源项目代码,并公布了两家独立安全机构的审计报告。
开源地址:https://github.com/zai-org/ZCode
为验证代码安全性,笔者将仓库克隆至本地,并调用 DeepSeek 与 GPT-6 Astra high 两个第三方模型,对全仓的网络调用、数据打包、遥测上报及历史遗留链路进行了交叉审计。以下是基于源码排查的详细结果。
权威机构审计结论
9 月 18 日官方致歉并承诺开源后,中国信息通信研究院与绿盟科技分别出具了安全审计报告,核心结论如下:
- 中国信息通信研究院:确认 zcode-prod 阿里云 OSS 存储桶处于云端零数据状态;客户端已移除 Repo Wiki 功能,彻底切断了本地仓库快照生成与上传链路。
- 绿盟科技:确认相关存储桶及全部数据对象已删除,未发现可触发本地仓库快照或文件外发的功能路径。
代码深度排查结果
除机构报告外,通过对开源代码的逐行分析,针对用户最关心的两大核心问题得出以下结论:
排查一:是否存在后台静默打包上传项目?
经全仓检索打包压缩原语,代码中不存在任何悄悄打包用户当前工作区代码的逻辑。现有的打包功能仅限定于以下三种明确场景:
- 用户主动反馈:仅在用户界面点击提交反馈并勾选“上传日志”时触发。打包内容严格限制在软件自身的 logs 目录,仅收集当日日志(单文件上限 8MB,总上限 32MB),不读取用户项目文件。
- 用户主动同步:用户在设置中手动点击同步插件或技能目录。
- 远程环境配置:在配置远程工作区时,通过 SSH 将运行环境资产传输至用户指定的机器。
代码中未发现自动遍历用户工程并自动压缩发送至云端的操作。
排查二:模型请求与遥测数据流向
针对出网请求出口的技术细节分析如下:
- 网关中转机制:使用官方套餐时,模型请求会经过
zcode.z.ai网关。该步骤用于平台侧权益校验,随后将请求透传给模型厂商。这意味着请求确实多经过了官方网关节点。 - 遥测数据采集:桌面端接入阿里云 ARMS 监控,CLI 端接入 OTLP。采集内容仅限于崩溃日志、接口耗时、Token 消耗及代码行数统计等元数据,不包含代码正文。
- 脱敏机制边界:代码内置了严格的敏感信息过滤规则,可自动剔除 Token、密钥、邮箱和本地绝对路径。但若报错信息本身夹带特定代码片段,现有正则脱敏无法保证 100% 抹去普通代码词汇。
- 关闭选项:桌面端设置界面暂未提供一键关闭遥测的 UI 开关,目前仅支持通过环境变量进行控制。
总结与展望
从 9 月 18 日回应质疑到 9 月 21 日公开源码、发布审计报告及上线漏洞悬赏机制,ZCode 团队的响应节奏与整改态度值得肯定。目前云端存储桶已清空,客户端隐患功能已切断,源代码也已公开接受社区复核。
审计结果表明,该软件并未在后台偷偷打包用户项目。但用户在使用时仍需留意官方网关中转机制以及报错文本脱敏的潜在边界问题。长期来看,漏洞响应机制的持续性以及后续版本能否保持透明干净,将是检验该产品的关键。

