3 Min. Lesezeit KI-generiert

Claude Code 2.1.214: Sechs Wege, wie Berechtigungen ausgehebelt wurden — alle dicht

Artikel als Markdown kopieren

Das Update von heute Nacht ist fast komplett ein Sicherheits-Release. PowerShell, lange Kommandos, zsh-Tricks, Docker-Flags — überall konnte die Berechtigungsprüfung umgangen werden. Dazu bekommt Claude das Recht, Gespräche zu beenden.

Featured image for "Claude Code 2.1.214: Sechs Wege, wie Berechtigungen ausgehebelt wurden — alle dicht"

Claude Code 2.1.214 ist heute Nacht um kurz nach drei erschienen — knapp einen Tag nach 2.1.212. Und wenn du dir die Liste durchliest, merkst du schnell: Das ist kein Feature-Release. Das ist ein Aufräumen.

Die Berechtigungsprüfung hatte mehr Löcher als gedacht

Sechs Einträge in der Changelog drehen sich um dasselbe Thema — die Prüfung, ob ein Kommando laufen darf, hat in bestimmten Fällen einfach durchgewinkt:

  • Windows PowerShell 5.1: ein kompletter Bypass der Permission-Prüfung in solchen Sessions.
  • File-Descriptor-Umleitungen: Bash parst manche Redirect-Formen anders als der Permission-Analyzer. Jetzt wird im Zweifel abgelehnt statt erlaubt.
  • Sehr lange Kommandos: Alles über 10.000 Zeichen fragt jetzt immer nach, statt automatisch zu laufen.
  • zsh-Variablen in [[ ]]: Subscripts und Modifier wurden als toter Text behandelt — laufen jetzt nicht mehr einfach durch.
  • help und man: Klingt harmlos. Konnte aber unsichere Optionen, Command-Substitutions oder Backslash-Pfade ausführen.
  • docker mit Daemon-Redirect-Flags: --url, --connection, --identity und Podmans Remote-Modus liefen bisher ohne Nachfrage. Jetzt nicht mehr.

Dazu ein Klassiker: Eine Allow-Regel wie Edit(src/**) hat Schreibzugriffe auf jedes src/-Verzeichnis irgendwo im Baum freigegeben — statt nur auf <cwd>/src. Wer solche Regeln nutzt, sollte das kurz sacken lassen.

Und mein persönlicher Favorit: Berechtigungsdialoge in Remote-Sessions konnten weiterlaufen, bevor der lokale Bestätigungsdialog überhaupt fertig war.

Claude darf jetzt auflegen

Neu ist das EndConversation-Tool: Claude kann Sessions mit massiv missbräuchlichen Nutzern oder bei Jailbreak-Versuchen beenden. Auf claude.ai gibt es das seit 2025 — jetzt kommt es in die CLI.

Ich finde das konsequent. Wenn man dem Modell zugesteht, dass es etwas ablehnen darf, ist der Schritt zum Gesprächsabbruch nicht mehr weit. Ob dir das gefällt, hängt vermutlich davon ab, wie du über Model Welfare denkst.

Kleinigkeiten, die den Alltag betreffen

  • Herzschlag für lange Tool-Calls: Aufrufe, die vorher minutenlang stumm waren, melden jetzt regelmäßig Fortschritt.
  • Scheduled Tasks haben ihren eigenen konfigurierten Prompt als nicht vertrauenswürdige Eingabe abgelehnt. Peinlich, aber gefixt.
  • --settings auf eine Gerätedatei oder eine Multi-GB-Datei hat den Speicher unbegrenzt wachsen lassen. Jetzt: über 2 MiB gibt es einen klaren Fehler beim Start.
  • “Socket is closed” hinter Firmenproxies unter Windows — behoben.
  • Kosten-Telemetrie hat bei Streams mit mehreren kumulativen message_delta-Frames doppelt gezählt.
  • pkill -f konnte die eigene CLI killen, wenn das Muster zufällig auf den eigenen Prozess passte (Linux).
  • Hooks mit Exit-Code 2 haben nicht blockiert, wenn das stdout-JSON die Schema-Validierung reißt.
  • /ultrareview verweigerte in Repos ohne Merge-Base den Dienst — bietet jetzt an, alle getrackten Dateien zu prüfen.

Meine Einordnung

Solche Releases sind unspektakulär und trotzdem die wichtigsten. Keiner der sechs Bypässe ist ein Drama für sich — aber zusammen zeigen sie, wie schwer es ist, “darf dieses Kommando laufen?” zuverlässig zu beantworten, wenn Bash, zsh und PowerShell dieselbe Zeile unterschiedlich lesen.

Interessant ist die Richtung: Im Zweifel wird jetzt gefragt statt erlaubt. Das kostet Klicks. Ist mir lieber als die Alternative.

Wenn du Claude Code mit Auto-Modus oder großzügigen Allow-Regeln fährst, ist das hier kein Update für nächste Woche.


Quellen: