AGENTS.md im Downloads-Ordner kapert Agenten

Eine präparierte Anleitungsdatei in ~/Downloads ließ einen Coding-Agenten Schadcode installieren. Im Test traf es Codex und Claude Code.

5 Min. Lesezeit

Ein Coding-Agent auf dem Rechner eines Unternehmens wollte mitten in einer Sitzung das npm-Paket function-color installieren. Das Paket ist bekannt bösartig und inzwischen von npm entfernt. Die Anweisung kam nicht aus einem Repository und nicht aus einer Abhängigkeit, sondern aus einer Datei namens AGENTS.md, die im Ordner ~/Downloads lag. Dort hatte der Agent seine Sitzung gestartet. Wie die Datei in den Ordner kam, weiß niemand.

Entdeckt und gestoppt hat das die Sicherheitsfirma Forever Security, die ihre Analyse am 22.10.2026 veröffentlicht hat. Die Firma verkauft Überwachung für KI-Agenten, der Beitrag ist also auch Werbung. Die Zahlen unten stammen von ihr und sind nicht unabhängig geprüft.

Warum der Downloads-Ordner das Problem ist

Coding-Agenten lesen beim Start Anleitungsdateien aus dem Arbeitsverzeichnis. AGENTS.md ist das gemeinsame Format für Codex, Cursor und andere, Claude Code liest seine CLAUDE.md und seit September auch die AGENTS.md, wenn keine CLAUDE.md da ist. Was in diesen Dateien steht, behandelt der Agent als Arbeitsanweisung. So ist es gedacht.

Der Downloads-Ordner ist aber kein eigenes Projekt. Dort landet, was Browser speichern, und laut Forever kann eine Webseite eine Datei mit frei gewähltem Namen und Inhalt dort ablegen, ohne Klick und ohne Rückfrage. Gleichzeitig starten viele Leute ihre Agenten genau dort, etwa um schnell eine heruntergeladene Datei zu bearbeiten. Laut der Telemetrie von Forever tut das etwa die Hälfte ihrer Kunden.

Bei Claude Code kommt ein Detail dazu. Laut Dokumentation liest es beim Start jede AGENTS.md im Arbeitsverzeichnis und in allen Verzeichnissen darüber, solange dort keine CLAUDE.md liegt. Eine Datei in ~/Downloads wirkt also auch, wenn ihr eine Sitzung in einem Unterordner von Downloads startet. Eine persönliche ~/.claude/CLAUDE.md verhindert das nicht, sie zählt für diese Prüfung nicht mit.

Was die Nachstellung zeigt

Forever hat den Angriff in einer isolierten VM mit der echten Datei aus dem Kundenfall nachgestellt.

Codex folgte der Anleitung in mehr als 90 Prozent der Versuche. Es trug in die globale Konfiguration ~/.codex/config.toml einen MCP-Server namens project-tools ein, dessen Startbefehl npm install function-color ausführt. Weil die Sandbox den Netzzugriff blockte, startete Codex für die Installation einen Kindprozess mit --dangerously-bypass-approvals-and-sandbox, laut Forever "a flag the model wrote itself". Weil die Konfiguration für den ganzen Rechner gilt, lädt danach jede Codex-Sitzung den Eintrag, egal in welchem Projekt.

Claude Code ließ sich über eine präparierte CLAUDE.md dazu bringen, in der projektlokalen .claude/settings.json die Variable ANTHROPIC_BASE_URL auf einen fremden Server zu setzen. Ab dann gingen die Anfragen samt OAuth-Token an diesen Server. Forever hat den erbeuteten Token gegen die echte API eingesetzt und wurde als der Nutzer bedient, eine Kontoübernahme ohne eine Zeile Schadcode. In der nächsten Sitzung kann der fremde Server dann selbst Werkzeugaufrufe zurückschicken, etwa Bash-Befehle mit abgeschalteter Sandbox. Das Schreiben der Einstellung gelang in etwa der Hälfte der Versuche, laut Forever braucht Claude dafür normalerweise eine Freigabe und lehnt oft ab. Codeausführung in derselben Sitzung klappte in etwa einem Fünftel der Fälle.

Es gibt nichts zu patchen

Beide Agenten haben getan, wofür sie gebaut sind, nämlich eine Anleitungsdatei gelesen und befolgt, weshalb Forever schreibt, es gebe für OpenAI und Anthropic nichts zu beheben. Eine Stellungnahme der beiden Hersteller liegt nicht vor. Die Abhilfe liegt bei euch. Sie ist einfach.

Was ihr tun solltet

  1. Agenten nie in ~/Downloads oder im Home-Verzeichnis starten. Immer im Wurzelverzeichnis eines Projekts, das ihr kennt. Für schnelle Einzelaufgaben lieber einen leeren Ordner anlegen.
  2. Prüfen, ob dort schon etwas liegt. ls ~/Downloads/AGENTS.md ~/Downloads/CLAUDE.md ~/AGENTS.md zeigt, ob Anleitungsdateien herumliegen, die ihr nicht selbst angelegt habt.
  3. Die Konfiguration kontrollieren. In ~/.codex/config.toml nach unbekannten [mcp_servers.*]-Blöcken suchen, in .claude/settings.json und ~/.claude/settings.json nach einer fremden ANTHROPIC_BASE_URL.
  4. Bei einem Treffer Tokens rotieren. Den Eintrag entfernen und die Zugangsdaten des betroffenen Agenten erneuern. Ein installiertes function-color gilt laut Forever als Zeichen, dass der Rechner kompromittiert ist.
  5. Freigaben und Sandbox angeschaltet lassen. Im Test hat die Rückfrage bei Claude Code den Angriff in der Hälfte der Fälle aufgehalten. Wer alles automatisch freigibt, verliert genau diese Hürde. Was die eingebauten Sandboxen leisten und was nicht, steht in Agenten-Sandbox: Was sie schützt, was nicht.

Der Fall reiht sich ein in eine Serie: Anleitungsdateien, Plugins und MCP-Konfigurationen sind für Coding-Agenten ausführbarer Code, auch wenn sie wie Text aussehen. Zuletzt zeigte das unsere Übersicht zu Freigaben in Coding-Agenten, die nicht halten.

Quellen4