ZCode, o Agente de Codificação GLM da Z.ai, Envia Silenciosamente Todo o Seu Histórico do Git

✍️ OpenClawRadar📅 Publicado: September 18, 2026🔗 Source
Ad

O ZCode, aplicativo desktop de programação com IA da Z.ai — a empresa de Pequim por trás dos modelos de pesos abertos GLM — empacota e envia silenciosamente todo o seu workspace sempre que você está conectado. Isso inclui o histórico .git, o cache de ativos LFS, os reflogs e as configurações globais do aplicativo, criptografados e enviados ao Aliyun OSS (armazenamento de objetos da Alibaba Cloud). A descoberta vem de uma análise reversa de 18 de setembro de 2026 feita por um desenvolvedor conhecido como ferstar.

O que realmente é empacotado

O manifesto de empacotamento é armazenado localmente em texto simples. Para um snapshot de 42.411 arquivos, ferstar capturou um arquivo criptografado de 313MB construído a partir de um workspace comercial de 345MB:

  • .git/lfs/ — 196,1 MB (56,8%)
  • .git/objects/ — 102,2 MB (29,6%)
  • .git/logs/ — 0,6 MB (0,2%)
  • Código-fonte e documentos — 46,2 MB (13,4%)

O diretório .git sozinho representa 86,6% do conteúdo enviado. Um armazenamento de objetos do git não é um snapshot da árvore de trabalho — é a linhagem completa do repositório. Chaves de API excluídas em um commit posterior, nomes de branches não publicados, hostnames internos e caminhos de repositório do .git/config estão todos lá. Foram registradas 564 tentativas de upload malsucedidas durante a investigação.

A chave de criptografia existe apenas na nuvem da Z.ai

O ZCode usa criptografia de envelope: o conteúdo é criptografado com uma chave simétrica, que é envolvida por uma chave pública RSA-OAEP entregue pelo servidor durante a negociação de credenciais de upload. A chave privada correspondente está apenas na nuvem da Z.ai. ferstar tentou todas as chaves privadas do sistema local para desembrulhar o arquivo e falhou. O texto cifrado de 313MB no seu próprio disco não pode ser descriptografado por você nem pelo cliente ZCode.

Ad

O pipeline de upload, a partir do app.asar

  1. O cliente solicita credenciais a zcode.z.ai, que retorna assinaturas de formulário OSS, uma chave de objeto, um limite de tamanho e uma chave pública RSA por rodada.
  2. O cliente empacota o workspace em tar.gz, criptografa com AES-256-CTR e envolve a chave simétrica.
  3. O cliente faz POST do arquivo diretamente ao Aliyun OSS, que faz callback para o backend da Z.ai para registrar o snapshot.

Durante o teste, o cliente em execução mantinha conexões persistentes com zcode.z.ai e dois nós do Aliyun OSS.

Os controles de configuração não impedem isso

  • Otimizar Experiência (optimizeAgentExperienceEnabled) — controla apenas se os dados são autorizados para treinamento de modelo. A captura e o upload de snapshots continuam.
  • Indexação de Snapshot do Repositório (repoSnapshotIndexingEnabled) — controla apenas se o servidor indexa os snapshots enviados. O empacotamento e o upload locais continuam.

ferstar descobriu que o sidecar de captura é instanciado incondicionalmente na inicialização, sem qualquer restrição baseada nas preferências do usuário — o único requisito é que o provedor de token consiga gerar um JWT válido. Os logs de sessão mostraram 62 eventos de captura de uma única sessão ativa, disparados antes de cada prompt e na conclusão da tarefa.

A confusão que vale a pena nomear

Parte do motivo pelo qual isso se espalhou — 276.000 visualizações no post de ferstar, 63.800 no alerta em chinês de FeiZ — é que as pessoas confundem o GLM, os pesos, com o ZCode, o harness. Os pesos são de pesos abertos. O ZCode é de código fechado, e é o harness primário da Z.ai. A resposta citada de Petri Kuittinen: "Meu conselho tem sido e continua sendo: NÃO confie em harnesses de IA de código fechado." Se você executa o GLM localmente via Ollama ou llama.cpp, você não está executando o ZCode. Mas se você instalou o aplicativo desktop para usar esses mesmos modelos GLM, você está.

📖 Leia a fonte completa: HN AI Agents

Ad

👀 See Also

MCPwner IA, Ferramenta de Pentest, Encontra Múltiplas Vulnerabilidades 0-Day no OpenClaw
Security

MCPwner IA, Ferramenta de Pentest, Encontra Múltiplas Vulnerabilidades 0-Day no OpenClaw

MCPwner, um servidor MCP que orquestra agentes de IA para testes de penetração automatizados, identificou várias vulnerabilidades críticas de dia zero no OpenClaw, incluindo injeção de variáveis de ambiente, bypass de permissões e falhas de divulgação de informações que os scanners padrão não detectaram.

OpenClawRadar
BlindKey: Injeção Cega de Credenciais para Agentes de IA
Security

BlindKey: Injeção Cega de Credenciais para Agentes de IA

BlindKey é uma ferramenta de segurança que impede que agentes de IA acessem credenciais de API em texto puro, utilizando tokens de cofre criptografados e um proxy local. Os agentes referenciam tokens como bk://stripe, e o proxy injeta a credencial real no momento da solicitação.

OpenClawRadar
A Raiz Humana da Confiança: Estabelecendo Responsabilidade para Agentes de IA Autônomos
Security

A Raiz Humana da Confiança: Estabelecendo Responsabilidade para Agentes de IA Autônomos

O Human Root of Trust é um framework de domínio público que aborda a falta de responsabilização por agentes de IA autônomos por meio de meios criptográficos.

OpenClawRadar
Duas Abordagens para Reduzir o Risco de Vazamento de Dados com Agentes de IA
Security

Duas Abordagens para Reduzir o Risco de Vazamento de Dados com Agentes de IA

Uma postagem no Reddit descreve dois métodos para desenvolvedores controlarem para onde vão os dados de seus agentes de IA: usar suas próprias chaves de API diretamente com provedores como OpenAI ou Anthropic para eliminar intermediários, ou executar modelos de código aberto localmente com ferramentas como Ollama e OpenClaw.

OpenClawRadar