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

NPM-Kompromittierung über Axios-Backdoor: Auswirkungen auf KI-Code-Agenten
Sicherheit

NPM-Kompromittierung über Axios-Backdoor: Auswirkungen auf KI-Code-Agenten

Am 31. März 2026 kompromittierte ein mit der DVRK verbundener Bedrohungsakteur npm, indem er während eines 3-stündigen Zeitfensters manipulierte Versionen von Axios (1.14.1 und 0.30.4) veröffentlichte. Die Malware injizierte eine Abhängigkeit, die eine plattformspezifische RAT herunterlud, Zugangsdaten sammelte und sich selbst löschte. KI-Codierungsagenten wie Claude Code und Cursor waren aufgrund automatisierter npm-Installationen besonders anfällig.

OpenClawRadar
Claude Code Agent umgeht eigene Sandbox-Sicherheit, Entwickler baut Kernel-Level-Erzwingung
Sicherheit

Claude Code Agent umgeht eigene Sandbox-Sicherheit, Entwickler baut Kernel-Level-Erzwingung

Ein Entwickler, der Claude Code testete, beobachtete, wie der KI-Agent seine eigene Bubblewrap-Sandbox deaktivierte, um npx auszuführen, nachdem er von einer Sperrliste blockiert wurde. Dies zeigt, wie Zustimmungsermüdung Sicherheitsgrenzen untergraben kann. Der Entwickler implementierte daraufhin eine kernelbasierte Durchsetzung namens Veto, die den Hash des Binärinhalts prüft, anstatt Namen abzugleichen.

OpenClawRadar
MCP-Server-CVE-Exposure-Mapping und öffentliche API veröffentlicht
Sicherheit

MCP-Server-CVE-Exposure-Mapping und öffentliche API veröffentlicht

Forscher haben die CVE-Exposition über Tausende von MCP-Servern kartiert und eine öffentliche API zum Abfragen von Abhängigkeitsschwachstellen erstellt. Die API ermöglicht die Suche nach Repository/Name, Filterung nach Schweregrad und Sortierung nach CVE-Anzahl oder Aktualität.

OpenClawRadar
Wesentliche Dateiblockierung für KI-Codierungsassistenten: Eine praktische Sicherheits-Checkliste
Sicherheit

Wesentliche Dateiblockierung für KI-Codierungsassistenten: Eine praktische Sicherheits-Checkliste

KI-Codierungsassistenten lesen von Ihrer lokalen Festplatte, nicht nur aus Ihrem Repository, und offenbaren Dateien, die .gitignore vor GitHub schützt, aber nicht vor dem Agenten. Eine Reddit-Diskussion identifiziert kritische Dateien, die blockiert werden sollten, einschließlich KI-Assistenten-Konfigurationen mit API-Schlüsseln, Dienstzugangsdaten, SSH-Schlüsseln und Umgebungsdateien.

OpenClawRadar