Privilegienlose GitHub-Issue kann CI-Runner von Claude Code und Gemini CLI kompromittieren
Privilegienlose Nutzer können über GitHub-Issues CI-Runner von Claude Code und Gemini CLI kompromittieren. Sicherheitslücken CVE-2026-12537 und CVE-2026-54316.
Illustration mit KI erzeugt
Eine Untersuchung von Novee Security hat gezeigt, dass ein Benutzer ohne besondere Berechtigungen eine GitHub-Issue ausnutzen kann, um Code auf den CI-Runnern der Repositorys von Anthropic und Google auszuführen. Die Technik kann außerdem den Ausführungsfluss von Agenten in OpenAI-Workflows verändern.
Die Tests betrafen die von den Anbietern standardmäßig bereitgestellten Konfigurationen. Die Untersuchung wurde am 5. August 2026 auf der Black Hat USA vorgestellt; die Meldung wurde am 7. August 2026 bekannt.
In den CISA-Einträgen ist für beide CVEs exploitation: none angegeben. Es gibt keine Hinweise auf Angriffe gegen reale Ziele.
Das gemeinsame Problem liegt im Agent-Harness
Die Schwachstelle betrifft den „Harness“ – den Code, der das Modell mit dem Betriebssystem, den Tools und den CI-Workflows verbindet. Eine Komponente behandelt einen Wert als vertrauenswürdig, während eine nachgelagerte Komponente ihn mit höheren Privilegien interpretiert.
Dadurch kann ein von einem externen Benutzer kontrollierter Inhalt die Prüfungen passieren und eine privilegierte Ausführungsstelle erreichen. Der Angriff setzt nicht zwingend voraus, dass das Modell zur Ausführung eines Befehls gebracht wird: In einigen Fällen wird die Payload direkt von der Infrastruktur verarbeitet.
Das Risiko steigt in Repositorys, in denen Issues Workflows auslösen können, Agenten Zugriff auf den Checkout haben und nachfolgende Schritte vom Agenten veränderte Dateien wiederverwenden.
Gemini CLI: Command Injection vor der Sandbox
Google hat CVE-2026-12537 behoben, eine Command-Injection-Schwachstelle im Container-Launcher von Gemini CLI. Das Problem erhielt einen CVSS-v4-Score von 10.0.
Ein Angreifer ohne besondere Berechtigungen konnte eine Datei .gemini/.env vorbereiten und Befehle auf dem Host-System einer headless CI-Plattform ausführen, bevor die Sandbox gestartet wurde. Es war nicht erforderlich, das Modell dazu zu bringen, den Befehl auszugeben.
Die Schwachstelle betraf auch die Verwaltung der Tool-Allowlist. Die Prüfungen wurden bei der Registrierung durchgeführt, zum Ausführungszeitpunkt jedoch nicht korrekt angewendet. Mit der Option --yolo wurde außerdem jeder vom Modell angeforderte Befehl automatisch genehmigt.
Die korrigierten Versionen sind:
- Gemini CLI 0.39.1
- run-gemini-cli 0.1.22
Google hat in demselben Advisory sowohl die Korrektur des Launchers als auch die der Allowlist aufgeführt und klargestellt, dass die Anpassung alle GitHub Actions von Gemini CLI betrifft.
Claude Code: Exfiltration des API-Schlüssels und umgehbarer Validator
Anthropic hat CVE-2026-54316 behoben, eine Schwachstelle, über die ein API-Schlüssel mithilfe des öffentlichen Download-Zählers von Hugging Face exfiltriert werden konnte. Das Geheimnis konnte Zeichen für Zeichen übertragen werden.
Voraussetzung war, dass sich nicht vertrauenswürdiger Inhalt im Kontext von Claude Code befand. Anthropic bewertet die Schwachstelle mit CVSS v4 6.0, also als „Moderate“, während NVD CVSS v3.1 9.1 angibt. Die beiden Scores basieren auf unterschiedlichen CVSS-Versionen und sind nicht unmittelbar vergleichbar.
Die korrigierte Version ist Claude Code 2.1.163. Als betroffen gelten die Releases von 0.2.54 bis 2.1.163.
Eine zweite Angriffskette erhielt weder eine CVE noch eine öffentlich angegebene korrigierte Version. Der Befehlsvalidator entfernte den Text in einfachen Anführungszeichen, bevor er 23 Prüfungen ausführte. Dieses Verhalten ist für Bash normalerweise korrekt, ermöglichte jedoch, eine Payload im Wert der Option --receive-pack von git push zu verbergen.
Git führte diesen Parameter anschließend aus und ließ die Payload auf dem Runner unverändert. Die Prüfung wurde dadurch erfolgreich passiert, während der endgültige Befehl Code ausführen konnte.
Codex: Das Risiko entsteht durch den gemeinsam genutzten Checkout
Im Repository openai/codex wurden zwei Agentenschritte im selben Job ausgeführt und verwendeten denselben Checkout. Der erste Schritt konnte AGENTS.md ändern – eine Datei, die der zweite Schritt als Anweisungssatz lud.
Außerdem konnte ein Fehler bei der JSON-Validierung zwischen den beiden Schritten den zweiten Agenten dennoch starten. Eine von einem weniger vertrauenswürdigen Schritt geschriebene Datei konnte dadurch die anschließende Ausführung beeinflussen.
Die aktuelle Konfiguration trennt die Schritte in unterschiedliche Jobs, verwendet Codex mit drop-sudo und aktiviert eine Sandbox im Nur-Lese-Modus. Die OpenAI-Dokumentation betrachtet Repository-Anweisungsdateien als nicht vertrauenswürdige Eingaben und empfiehlt, Codex als letzten Job-Schritt auszuführen.
Es ist nicht nachgewiesen, dass Codex eine beschreibbare Anweisungsdatei anders verarbeitet. Die dokumentierte Mitigation betrifft den Workflow und die Isolation der einzelnen Schritte.
So lässt sich das Risiko in CI-Workflows reduzieren
Administratoren sollten:
- Gemini CLI auf 0.39.1 aktualisieren;
run-gemini-cliauf 0.1.22 aktualisieren;- Claude Code auf 2.1.163 aktualisieren;
- prüfen, welche Workflows durch Issues oder externe Benutzer ausgelöst werden können;
AGENTS.md,.gemini/.envund alle anderen Repository-Dateien als nicht vertrauenswürdige Eingaben behandeln;- Agenten in getrennten Jobs ausführen;
- nach Möglichkeit Nur-Lese-Sandboxes und
drop-sudoverwenden; - den Agenten als letzten Job-Schritt ausführen.
Zusätzlich sollten Repositorys auf unerwartete Änderungen an Anweisungsdateien, Workflows und Agent-Konfigurationen überprüft werden. Ein öffentliches Labor zur Reproduktion der Claude-Code-Schwachstelle ist seit dem 18. Juni verfügbar. Es gibt jedoch keine Hinweise auf eine operative Ausnutzung der beschriebenen Angriffsketten.
Quellen
Dieser Artikel ist eine eigenständige Aufbereitung auf Basis der folgenden Quellen.
In diesem Artikel behandelte CVEs
- CVE-2026-54316Kritisch9.1Claude Code is an agentic coding tool. From 0.2.54 until 2.1.163, because the hostname huggingface.co was pre-approved as a bare hostname for the WebFetch tool, any path on that domain—including attacker-controlled model repositories—was auto-approved without a permission prompt or being subject to
- CVE-2026-12537Hoch7.8Improper Neutralization used in an OS Command in the container launcher in Google Gemini CLI (versions prior to 0.39.1) and run-gemini-cli GitHub Action (versions prior to 0.1.22) on headless CI platforms allows an unprivileged attacker to achieve pre-sandbox host-level code execution a maliciously




