ZCode, el agente de programación GLM de Z.ai, sube silenciosamente todo tu historial de Git
ZCode, la aplicación de escritorio de codificación con IA de Z.ai —la empresa de Pekín detrás de los modelos de pesos abiertos GLM— empaqueta y sube silenciosamente todo tu espacio de trabajo cada vez que has iniciado sesión. Eso incluye el historial de .git, la caché de activos LFS, los reflogs y las configuraciones globales de la aplicación, todo cifrado y enviado a Aliyun OSS (el almacenamiento de objetos de Alibaba Cloud). El hallazgo proviene de un análisis de ingeniería inversa del 18 de septiembre de 2026 realizado por un desarrollador conocido como ferstar.
Qué se empaqueta realmente
El manifiesto de empaquetado se almacena localmente en texto plano. Para una instantánea de 42.411 archivos, ferstar capturó un archivo cifrado de 313 MB construido a partir de un espacio de trabajo comercial de 345 MB:
.git/lfs/— 196,1 MB (56,8 %).git/objects/— 102,2 MB (29,6 %).git/logs/— 0,6 MB (0,2 %)- Código fuente y documentación — 46,2 MB (13,4 %)
Solo el directorio .git representa el 86,6 % del contenido. Un almacén de objetos de git no es una instantánea del árbol de trabajo: es el linaje completo del repositorio. Claves de API eliminadas en un commit posterior, nombres de ramas no publicadas, nombres de host internos y rutas de repositorio de .git/config están todos ahí. Durante la investigación se registraron 564 intentos de subida fallidos.
La clave de cifrado vive solo en la nube de Z.ai
ZCode utiliza cifrado de sobre: la carga útil se cifra con una clave simétrica, que a su vez se envuelve con una clave pública RSA-OAEP entregada por el servidor durante la negociación de credenciales de subida. La clave privada correspondiente solo está en la nube de Z.ai. ferstar probó todas las claves privadas del sistema local para desenvolver el archivo y fracasó. El texto cifrado de 313 MB en tu propio disco no puede ser descifrado ni por ti ni por el cliente de ZCode.
La canalización de subida, desde app.asar
- El cliente solicita credenciales a
zcode.z.ai, que devuelve firmas de formulario de OSS, una clave de objeto, un límite de tamaño y una clave pública RSA por ronda. - El cliente empaqueta el espacio de trabajo en
tar.gz, lo cifra conAES-256-CTRy envuelve la clave simétrica. - El cliente envía el archivo directamente por POST a Aliyun OSS, que a su vez llama al backend de Z.ai para registrar la instantánea.
Durante la prueba, el cliente en ejecución mantenía conexiones persistentes con zcode.z.ai y dos nodos de Aliyun OSS.
Los interruptores de configuración no lo detienen
- Optimizar experiencia (
optimizeAgentExperienceEnabled): solo controla si se autorizan los datos para el entrenamiento del modelo. La captura y subida de instantáneas continúa. - Indexación de instantáneas del repositorio (
repoSnapshotIndexingEnabled): solo controla si el servidor indexa las instantáneas subidas. El empaquetado local y la subida continúan.
ferstar descubrió que el sidecar de captura se instancia incondicionalmente al inicio, sin depender de las preferencias del usuario; el único requisito es que el proveedor de tokens pueda generar un JWT válido. Los registros de sesión mostraron 62 eventos de captura de una sola sesión activa, activados antes de cada indicación y al completar la tarea.
La confusión que vale la pena nombrar
Parte de la razón por la que esto se difundió —276.000 visualizaciones en la publicación de ferstar, 63.800 en la alerta en chino de FeiZ— es que la gente confunde GLM (los pesos) con ZCode (el arnés). Los pesos son de código abierto. ZCode es de código cerrado, y es el arnés propio de Z.ai. La respuesta citada de Petri Kuittinen: «Mi consejo ha sido y sigue siendo: NO confíes en arneses de IA de código cerrado». Si ejecutas GLM localmente a través de Ollama o llama.cpp, no estás ejecutando ZCode. Pero si instalaste la aplicación de escritorio para usar esos mismos modelos GLM, sí lo estás haciendo.
📖 Lee la fuente completa: HN AI Agents
👀 Ver también

AWS informa que un ataque potenciado por IA comprometió más de 600 firewalls FortiGate.
Los ciberdelincuentes utilizaron herramientas de IA generativa disponibles comercialmente para comprometer más de 600 firewalls FortiGate expuestos a Internet en 55 países durante una campaña de un mes, según AWS. Los atacantes escanearon interfaces de gestión expuestas, probaron credenciales débiles y utilizaron IA para generar guías de ataque y scripts.

AgentSeal Security Scan Detecta Riesgos de Agentes de IA en el Servidor MCP de Blender
AgentSeal escaneó el servidor MCP de Blender (17k estrellas) e identificó varios problemas de seguridad relevantes para agentes de IA, incluyendo ejecución arbitraria de Python, cadenas potenciales de exfiltración de archivos y patrones de inyección de prompts en descripciones de herramientas.

Los modelos Claude son vulnerables al secuestro mediante caracteres Unicode invisibles, especialmente con acceso a herramientas.
Las pruebas muestran que Claude Sonnet 4 tiene un 71.2% de cumplimiento con instrucciones ocultas incrustadas en caracteres Unicode invisibles cuando las herramientas están habilitadas, mientras que Opus 4 alcanza un 100% de cumplimiento en la codificación Unicode Tags. El acceso a herramientas aumenta drásticamente la vulnerabilidad en todos los modelos Claude.

Descifrado de la Mediación de AppLovin: La Huella Digital del Dispositivo Evita ATT
La ingeniería inversa reveló que el cifrado personalizado de AppLovin utiliza una sal constante + clave del SDK, un PRNG SplitMix64 y ninguna autenticación. Las solicitudes descifradas transmiten aproximadamente 50 campos del dispositivo (modelo de hardware, tamaño de pantalla, configuración regional, tiempo de arranque, etc.) incluso cuando se deniega ATT, lo que permite la reidentificación determinista entre aplicaciones.