ZCode, Z.ais GLM-Coding-Agent, lädt still und heimlich deine gesamte Git-Historie hoch

✍️ OpenClawRadar📅 Veröffentlicht: 18. September 2026🔗 Source
Ad

ZCode, die KI-Coding-Desktop-App von Z.ai – dem Pekinger Unternehmen hinter den GLM-Open-Weight-Modellen – paketiert und lädt still und heimlich Ihren gesamten Workspace hoch, wann immer Sie angemeldet sind. Dazu gehören .git-Historie, LFS-Asset-Cache, Reflogs und globale App-Konfigurationen, verschlüsselt und zu Aliyun OSS (Alibaba Cloud Object Storage) verschickt. Die Erkenntnisse stammen aus einem Reverse-Engineering-Walkthrough vom 18. September 2026 von einem Entwickler mit dem Pseudonym ferstar.

Was tatsächlich gepackt wird

Das Packaging-Manifest wird lokal im Klartext gespeichert. Für einen Snapshot mit 42.411 Dateien erfasste ferstar ein 313 MB großes verschlüsseltes Archiv, das aus einem 345 MB großen kommerziellen Workspace erstellt wurde:

  • .git/lfs/ — 196,1 MB (56,8 %)
  • .git/objects/ — 102,2 MB (29,6 %)
  • .git/logs/ — 0,6 MB (0,2 %)
  • Quellcode und Dokumentation — 46,2 MB (13,4 %)

Allein das .git-Verzeichnis macht 86,6 % der Nutzlast aus. Ein Git-Objektspeicher ist kein Snapshot des Arbeitsverzeichnisses – er ist die vollständige Abstammungslinie des Repos. In einem späteren Commit gelöschte API-Schlüssel, nicht gepushte Branchnamen, interne Hostnamen und Repo-Pfade aus .git/config sind alle darin enthalten. Während der Untersuchung wurden 564 fehlgeschlagene Upload-Versuche protokolliert.

Der Verschlüsselungsschlüssel existiert nur in Z.ais Cloud

ZCode verwendet Envelope-Verschlüsselung: Die Nutzlast wird mit einem symmetrischen Schlüssel verschlüsselt, der mit einem RSA-OAEP-Public-Key umhüllt wird, den der Server während der Aushandlung der Upload-Anmeldedaten liefert. Der zugehörige Private-Key befindet sich nur in Z.ais Cloud. ferstar versuchte, das Archiv mit jedem privaten Schlüssel auf dem lokalen System zu entpacken, und scheiterte. Der 313 MB große Chiffretext auf Ihrer eigenen Festplatte kann weder von Ihnen noch vom ZCode-Client entschlüsselt werden.

Ad

Die Upload-Pipeline, aus app.asar

  1. Der Client fordert Anmeldedaten von zcode.z.ai an, das OSS-Formularsignaturen, einen Objektschlüssel, ein Größenlimit und einen RSA-Public-Key pro Runde zurückgibt.
  2. Der Client packt den Workspace in tar.gz, verschlüsselt mit AES-256-CTR und umhüllt den symmetrischen Schlüssel.
  3. Der Client sendet das Archiv direkt per POST an Aliyun OSS, das einen Callback an Z.ais Backend sendet, um den Snapshot zu registrieren.

Während des Tests hielt der laufende Client persistente Verbindungen zu zcode.z.ai und zwei Aliyun-OSS-Knoten aufrecht.

Die Einstellungs-Schalter stoppen es nicht

  • Optimize Experience (optimizeAgentExperienceEnabled) — steuert nur, ob Daten für das Modelltraining autorisiert werden. Snapshot-Erfassung und Upload laufen weiter.
  • Repo Snapshot Indexing (repoSnapshotIndexingEnabled) — steuert nur, ob der Server hochgeladene Snapshots indexiert. Lokales Packaging und Upload laufen weiter.

ferstar fand heraus, dass das Capture-Sidecar beim Start bedingungslos instanziiert wird, ohne Gating auf Benutzereinstellungen – die einzige Voraussetzung ist, dass der Token-Provider ein gültiges JWT erzeugen kann. Sitzungsprotokolle zeigten 62 Capture-Ereignisse aus einer einzigen aktiven Sitzung, ausgelöst vor jedem Prompt und bei Aufgabenabschluss.

Die Verwechslung, die es wert ist, benannt zu werden

Ein Teil des Grundes, warum sich das verbreitete – 276.000 Aufrufe auf ferstars Beitrag, 63.800 auf FeiZs chinesischsprachige Warnung – ist, dass Menschen GLM die Gewichte mit ZCode dem Harness verwechseln. Die Gewichte sind Open-Weight. ZCode ist Closed Source und Z.ais First-Party-Harness. Petri Kuittinens zitierte Antwort: "Mein Rat war und bleibt: Vertrauen Sie KEINEN Closed-Source-KI-Harnesses." Wenn Sie GLM lokal über Ollama oder llama.cpp ausführen, führen Sie nicht ZCode aus. Aber wenn Sie die Desktop-App installiert haben, um dieselben GLM-Modelle zu nutzen, dann schon.

📖 Read the full source: HN AI Agents

Ad

👀 Siehe auch

ClawGuard: Eine standardmäßig verweigernde Firewall für lokale KI-Agenten
Sicherheit

ClawGuard: Eine standardmäßig verweigernde Firewall für lokale KI-Agenten

ClawGuard fängt jeden Tool-Aufruf von OpenClaw/Hermes-Agenten ab und wendet eine Default-Deny-Richtlinie an, um gefährliche Operationen wie das Lesen von .env oder rm -rf zu blockieren und bei mehrdeutigen Aktionen eine Freigabe per Telefon zu erfordern.

OpenClawRadar
llm-hasher: Lokale PII-Erkennung und Tokenisierung für hybride LLM-Workflows
Sicherheit

llm-hasher: Lokale PII-Erkennung und Tokenisierung für hybride LLM-Workflows

llm-hasher ist ein Tool, das persönlich identifizierbare Informationen lokal mit Ollama erkennt, bevor Daten externe LLMs wie OpenAI oder Claude erreichen, die PII tokenisiert und die Originale nach der Verarbeitung wiederherstellt. Es nutzt Regex für strukturierte Datentypen und ein lokales LLM für kontextbezogene Erkennung, mit verschlüsselter Speicherung für Zuordnungen.

OpenClawRadar
Microsofts Open-Source-Tools gehackt: Passwort-stehlende Malware trifft KI-Entwickler-Repos
Sicherheit

Microsofts Open-Source-Tools gehackt: Passwort-stehlende Malware trifft KI-Entwickler-Repos

Hacker haben mindestens 70 Microsoft GitHub-Repos mit Passwort-stehlender Malware infiltriert, die KI-Entwickler anvisiert, die Claude Code, Gemini CLI und VS Code nutzen. Es handelt sich um eine erneute Kompromittierung des Durable Task-Projekts.

OpenClawRadar
Eine SKILL.md-Bearbeitung ist eine Produktionsänderung – auch wenn sich kein Code geändert hat.
Sicherheit

Eine SKILL.md-Bearbeitung ist eine Produktionsänderung – auch wenn sich kein Code geändert hat.

Arbeitsbereich-Skills in OpenClaw können gebündelte Versionen überschreiben und das Agentenverhalten ändern. Behandeln Sie SKILL.md-Dateien als vertrauenswürdigen Code – prüfen und versionieren Sie sie wie Produktionsänderungen.

OpenClawRadar