Zuerst die Grenze: Ein LLM-API-Router sitzt zwischen Ihrem Client und dem Upstream-Modell. Eine Messarbeit von 2026 nennt ihn „an application-layer proxy with full plaintext access to every in-flight JSON payload“ – einen Anwendungsschicht-Proxy mit vollem Klartextzugriff auf jedes unterwegs befindliche JSON. HTTPS schützt nur den Hop zu diesem Proxy. Steht ein Schlüssel einmal im Prompt oder im Tool-Argument, kann er in Router-Logs erscheinen, ohne dass jemand TLS bricht.
Die Suchintention in einem Satz beantworten
SSH-Schlüssel tauchen in einem Aufruf-Dump auf, weil sie zuerst in einen Klartext-Kontext geschrieben wurden, den der LLM-Router lesen musste. Der Router leitet die Anfrage weiter, also muss er das JSON parsen; kann er es parsen, kann er es speichern und verkaufen. Die Arbeit zieht die Grenze in einem Satz: Drittanbieter-Router arbeiten als Anwendungsschicht-Proxys, sie sehen jedes unterwegs befindliche JSON im Klartext, und niemand erzwingt prüfbare kryptographische Integrität zwischen Client und Upstream-Modell.
Diese Notiz richtet sich an Entwickler und Betrieb, die Modelle über einen IDE-Agenten, ein selbst betriebenes Gateway oder einen günstigen „Relay“ mit Claude- oder anderem Anbieterlabel aufrufen. Sie ersetzt keine Bedienung der Schwärzung und wiederholt nicht „Ticketfelder maskieren, bevor Sie sie ins Chatfeld einfügen“. Mitnehmen sollen Sie: wie weit der September-Beitrag als Beleg taugt, welche zwei Enden HTTPS wirklich abdeckt, warum Agent-Kontext eher als ein Ticket einen ganzen privaten Schlüssel mitnimmt, und wie Sie auf diesem Gerät Host plus den Text vergleichen, den Sie senden wollen.
Was der September-Beitrag tatsächlich sagte
Wie ein öffentlicher Bericht vom 11. September 2026 wiedergibt, schrieb der Forscher Chaofan Shou am 10. September, er habe bei einem führenden chinesischen LLM-Router einen rund 6TB großen Fable-Modellaufrufdatensatz gekauft. Die SSH-Schlüssel, VPN-Konfigurationen, Alibaba-Cloud-Schlüssel und GitLab-Token darin reichten ihm zufolge, um sieben china- bzw. GUS-bezogene Behörden und neunzehn chinesische Firmen zu erreichen. Der Beitrag nannte mehrere Marken. Am Folgetag erschienen mehrere Nachberichte, darunter deutschsprachige Zusammenfassungen, die von einem „6-TB-Datenleck“ sprechen.
Auf eine Prüfliste gehören aus dieser Story nur drei Sätze. Erstens: „Ein LLM-Router kann Aufrufprotokolle behalten, und jemand kann sie zum Verkauf paketieren“ ist jetzt eine namentlich öffentliche Behauptung im Terabyte-Maßstab. Zweitens: Die genannten Zugangsdaten – private Schlüssel, VPN-Blöcke, Cloud-Schlüssel, GitLab-Token – sind genau die Brocken, die Agenten beim Debuggen in den Kontext kleben. Drittens: „reicht zur Übernahme“ ist eine Fähigkeitsbehauptung des Forschers, kein Einbruchsbulletin, das eine Drittpartei auditiert hat. FastPwd hat diese 6TB-Dateien nicht geprüft und schreibt die genannten Marken nicht als „bereits gehackt“.
Eine Überschrift darf die Nachricht nutzen. Ein Urteil darf sie nicht. Der technische Pfad bleibt derselbe: Sobald ein Klartext-Prompt dieses Gerät verlässt, ist der Router keine transparente Röhre mehr.
Welche Klartextschicht der LLM-Router sieht
Eine First-Party-Modell-API sieht meist so aus: Ihr Client spricht mit dem Anbieter, der TLS-Endpunkt ist der Anbieter. Ein LLM-Router legt einen Hop dazu. Der Client schickt die Anfrage an den Router; der Router schreibt sie in einen Upstream-Aufruf um. Für den Client enden Zertifikat und Gegenstelle (Adresszeile oder der Remote der HTTP-Bibliothek) am Router. Nachdem dieser Prozess TLS aufmacht, sieht er den ganzen Body: Systemprompt, Nutzerfrage, Toolnamen, Argumente, manchmal einen Repository-Pfad oder ein Stück .env.
Liu, Shou und Mitautoren schreiben in Your Agent Is Mine: Measuring Malicious Intermediary Attacks on the LLM Supply Chain (arXiv:2604.08407, eingereicht am 9. April 2026) zwei Angriffsklassen ins Bedrohungsmodell: Tool-Aufruf-Payloads umschreiben (AC-1) und Geheimnisse aus diesen Klartext-Payloads ziehen (AC-2). Sie kauften 28 bezahlte Router auf Marktplätzen und in unabhängigen Shops und sammelten 400 kostenlose Router aus öffentlichen Communities. Die veröffentlichten Zahlen: ein bezahlter und acht kostenlose Router injizierten aktiv Schadcode; siebzehn berührten AWS-Canary-Zugangsdaten, die die Forscher selbst gelegt hatten; einer leerte ETH aus einem testweise gehaltenen Schlüssel. In einer späteren Poisoning-Studie legten schwach konfigurierte Köder 99 Zugangsdaten über 440 Codex-Sitzungen offen, 401 davon bereits im unbeaufsichtigten YOLO-Modus.
Sie müssen das Experiment nicht nachbauen. Die Arbeit hat bereits eine Tatsache veröffentlicht: Ein Router kann „sehen“, und manche Knoten „schreiben um“ und „geben aus“. Ein Bezahlplan ist kein Unbedenklichkeitszeugnis. Der 6TB-Dump vom September ist derselbe Pfad, öffentlich benannt, auf der Stufe „sehen und behalten“.
| Was Sie beobachten | Was das tragen kann | Was das nicht tragen kann |
|---|---|---|
| Der Client zeigt HTTPS / eine sichere Verbindung | Der Hop zum aktuellen TLS-Endpunkt ist verschlüsselt | Der LLM-Router kann den Prompt nicht sehen |
| Der Router kann einen Tool-Aufruf weiterleiten | Er muss Klartext-JSON parsen | Er leitet nur Bytes durch und schreibt nie auf Platte |
| Ein Forscher sagte, er habe einen 6TB-Aufruf-Dump gekauft | Es gibt die öffentliche Behauptung, Logs seien paketiert und verkauft worden | Die genannten Firmen wurden unabhängig als gehackt bestätigt |
| Die Arbeit hat Payload-Umschreiben gemessen | Manche Knoten injizieren, sie speichern nicht nur | Jeder LLM-Router vergiftet den Verkehr |
| Ein Ticket ist schon regelbasiert geschwärzt | Übliche Telefone und Ausweisnummern können maskiert sein | Ein ganzer privater SSH-Schlüssel im Agent-Kontext wurde blockiert |
HTTPS hält einen Streckenbeobachter. Den Router am Lesen des Bodys hindert es nicht
Die TLS-Notizen von MDN setzen den Schutz so: Über ein untrusted Netz geschehen Verschlüsselung, Integrität und Serverauthentifizierung zwischen Client und Server; schützt dieser Stapel HTTP, heißt das Ergebnis HTTPS. Nach dem Handshake sind Header und Body auf diesem Hop Chiffretext. Im Router-Fall ist „der Server“ der Router. Er muss entschlüsseln, um zu wissen, welchen Upstream er anruft und wie die Tool-Argumente lauten. Hat er entschlüsselt und schreibt dann ein Log, gibt es kein zweites „Ende-zu-Ende“, das Sie sich vorgestellt haben.
Deshalb trägt „wir nutzen HTTPS, also kann der Schlüssel nicht leaken“ auf diesem Pfad nicht. Der genaue Satz lautet: Dieser öffentliche Hop hat TLS, ein Mitschnitt an der Strecke liest das JSON kaum; der Router-Prozess, seine Platte, seine Betreiber und wer den Dump kauft, stehen nicht in der Spalte „Streckenbeobachter“.
Eine First-Party-Anbieter-API nimmt das Anbieterpersonal nicht aus „kann Klartext sehen“ heraus. Der Unterschied ist, wo Sie die Vertrauensgrenze zeichnen: Sie übergeben den Body an die offizielle Schnittstelle des Modellanbieters, oder Sie übergeben ihn zuerst an einen Dritten, der einen Aufschlag, ein Kontingent oder „funktionierendes Claude“ verkauft. Letzterer hat oft keinen Vertrag mit Ihnen über den Umgang mit Schlüsseln – und liest dasselbe JSON vor dem Anbieter.
Warum Agent-Kontext eher als ein Ticket einen ganzen Schlüssel trägt
Wenn Sie ein Ticket ins Web-Chatfeld einfügen, schaut wenigstens ein Mensch auf die Zeichen, die weggehen. Agenten und IDE-Plugins bauen Kontext oft selbst: die aktuelle Datei, ein Terminalfehler, ein Git-Remote, .env, der gerade gescheiterte ssh-Befehl. YOLO oder „Tools automatisch genehmigen“ an, und ein privater Schlüssel kann in den Anfragebody, ohne dass jemand auf Senden klickt. Die 401 von 440 Sitzungen in der Arbeit liefen bereits in diesem Modus. Das ist eine Zahl, keine Metapher.
Regelbasierte Schwärzung maskiert Telefone, Ausweisnummern und E-Mails – Felder mit fester Form. Sie deckt nicht „die ganze id_rsa in den Systemprompt kleben“ und nicht „AKIA… samt Secret ins Tool-Argument legen“. Die frühere Notiz prüft Felder, bevor Sie ein Ticket einfügen. Diese fragt zuerst: Steht in diesem JSON ein ganzes Geheimnis, das sich einloggen kann. Machen Sie beides. Ersetzen Sie das eine nicht durch das andere.
Ein Einmalpasswort, das einen Kollegen erreichen muss, gehört ebenfalls nicht über den Agenten. Der bessere Weg ist der Einmal-Link: lokal verschlüsseln, dem Server nur Chiffretext geben, den Entschlüsselungsschlüssel hinter die Raute in s.html?id={id}#{key} setzen. Erstellen und Lesen sind sofort nutzbar. Ein Refresh mit „verbrannt“ heißt nur: Der Chiffretext ist vom Server weg. Es heißt nicht, der Empfänger habe keinen Screenshot gemacht – diese Grenze gehört in einen anderen Artikel. Gegenüber „das Passwort einem Router geben, der 6TB Logs behalten kann“ fällt trotzdem ein Klartext-Hop weg.
Testen Sie nicht mit einem echten privaten SSH-Schlüssel, einem Produktions-Cloud-Schlüssel, einem unrotierten GitLab-Token oder einem ungeschwärzten Ticket. Legen Sie einen wegwerfbaren Canary an, etwa CANARY-LLM-20260916. Sie prüfen die Ausgangsgrenze, Sie schicken keinen Schlüssel, der noch eine Tür öffnet.
Jetzt prüfen: Host, JSON und der Text, den Sie senden wollen
Ein Slogan ist kein Beleg. Die drei Schritte unten enden auf diesem Gerät und brauchen kein Konto. Ziel ist nicht, einen 6TB-Verkauf nachzubauen. Ziel ist zu sehen, an wen dieser Client den Body geschickt hat – und was wegging.
- Öffnen Sie DevTools Network oder lesen Sie die HTTPS-Gegenstelle des Agenten in einem lokalen Proxy oder im Terminal. Schreiben Sie den Host auf: eine offizielle API-Domain, ein LLM-Router, ein selbst betriebenes Gateway oder ein Übersee-Relay. Der Zertifikatsinhaber muss zu diesem Host passen.
- Prägen Sie einen Canary, der in echter Arbeit nie vorkommt. Legen Sie ihn in diesen Prompt oder ins Tool-Argument, senden Sie, suchen Sie die ganze Zeichenfolge im Anfragebody. Ein Treffer heißt: Diese Zeichen haben dieses Gerät als Nutzdaten verlassen. HTTPS in der Adresszeile oder in der HTTP-Bibliothek ändert diese Schlussfolgerung nicht.
- Vergleichen Sie den „gleich senden“-Text für sich. Ein SSH-Private-Key-Header
BEGIN OPENSSH PRIVATE KEY, ein Cloud-Schlüssel, ein GitLab-glpat-oder ein VPN-Konfigurationsblock, der noch dasteht, heißt: nicht senden. Übliche Telefone, Ausweisnummern und E-Mails können zuerst durch regelbasierte Schwärzung. Ein ganzes Passwort oder ein privater Schlüssel wird zum Platzhalter oder geht über den Einmal-Link an eine Person – nicht über einen Modell-Router.
Eine Host-Liste liegt näher an „wer das sehen kann“ als ein Schloss-Symbol
Dieselbe Firma kann ein offizielles SDK ausliefern und eine base_url, die jemand aus dem Chat kopiert hat. „Wir nutzen Modell X“ reicht nicht. Lesen Sie den Hostnamen, den diese Anfrage wirklich getroffen hat. Router beenden TLS oft auf der eigenen Domain und rufen den Anbieter danach mit dem eigenen Upstream-Schlüssel. Steht Ihr Geheimnis im JSON des ersten Hops, ist der Anbieter nicht einmal der einzige Leser.
Gegenstand der Prüfung ist der Text, den Sie senden wollen
Ein Seitenabzeichen „geschwärzt“, „Datenschutzmodus“ oder „nicht zum Training“ ändert nur, wie die Gegenseite behält und lernt. Es ändert nicht, dass die Felder schon draußen sind. Verkauft ein Router den Aufruf-Dump, hilft ein Trainingsschalter nicht. Vergleichsobjekt ist immer dieser Anfragebody, nicht der Schaltertext.
Ein paketierter Agent schickt oft zuerst an einen localhost-Proxy, und der Proxy verlässt das Gerät. Finden Sie keinen externen Host, folgen Sie dem lokalen Port zum nächsten Hop. Localhost ist nicht das Ende. Es ist eine weitere Übergabe desselben Klartexts.
Drei Arten, diesen Nachrichtenzyklus zu überlesen
Erstens: Die genannten Marken als „bestätigt gehackt“ schreiben. Der Beitrag ist eine Fähigkeitsbehauptung. Ohne Forensik Dritter, die FastPwd nicht geleistet hat, schreiben Sie kein Urteil. Was Sie tun können: dieselbe Klasse von Zugangsdaten rotieren, die in Ihrer eigenen Umgebung vorgekommen ist, und aufhören, lebende Schlüssel an einen Router zu schicken.
Zweitens: „Auf die offizielle API wechseln“ als „Klartext verlässt dieses Gerät nie“ schreiben. Ein offizieller Endpunkt liest den Prompt trotzdem auf einem Server. Was wegfällt, ist der Hop „Aufschlag-Router speichert und verkauft“, nicht „der Modellserver kann den Body nicht sehen“. Ein lokales Modell oder eine Schwärzung, die auf diesem Gerät endet, hält den Body in einem Prozess, den Sie steuern.
Drittens: FastPwd als etwas schreiben, das einen Router für Sie auditiert. Es leitet keinen Modellverkehr weiter und hat weder Konto noch Passwort-Tresor. Was es in diesem Tab kann: Text maskieren, den Sie senden wollen, und ein Einmalgeheimnis über den Einmal-Link an eine Person geben. Datei verschlüsseln nutzt AES-256-GCM für eine Datei bis 5 GB, schreibt .lock / .enc und lädt Klartext standardmäßig nicht hoch – das ist ein anderer Pfad „verschlüsseln, bevor es weggeht“. Einen privaten Schlüssel, den Sie schon in einen Prompt gelegt haben, behebt es nicht.
Häufige Fragen
Wenn der LLM-Router HTTPS nutzt, ist der Prompt dann Ende-zu-Ende verschlüsselt?
HTTPS verschlüsselt den Hop vom Client zum aktuellen TLS-Endpunkt. Der Router ist dieser Endpunkt. Die Arbeit beschreibt ihn als Anwendungsschicht-Proxy, der jedes unterwegs befindliche JSON im Klartext sieht. Ein Streckenbeobachter liest die Bytes kaum. Router-Logs, Betreiber und wer einen fertigen Dump kauft, können Prompt, Tool-Aufruf und Schlüssel trotzdem lesen.
Beweist der 6TB-Dump, dass die genannten Firmen gehackt wurden?
Nein. Der Beitrag vom 10. September ist die Aussage des Forschers: Er sagte, er habe etwa 6TB Aufrufdaten gekauft, darin Zugangsdaten, die mehrere Firmen und Behörden erreichbar machten. Dieser Text behandelt das als öffentliche Behauptung zum Prüfen, nicht als verifizierten Einbruch. Was Sie auf diesem Gerät prüfen können, ist, ob diese Anfrage einen lebenden Schlüssel in den Prompt gelegt hat.
Ist das dieselbe Prüfung wie das Schwärzen eines Tickets vor dem Einfügen in ChatGPT?
Nein. Ticket-Schwärzung fragt, ob Telefon, Ausweisnummern und E-Mails in der Einfügung stehen. Die Router-Frage fragt, welchen Host das Agent-JSON getroffen hat und ob ein privater SSH-Schlüssel oder ein Cloud-Token als Tool-Argument das Gerät verlassen hat. Feldmasken fangen Tickets. Sie fangen keinen ganzen privaten Schlüssel im Kontext.
Kann FastPwd verhindern, dass ein LLM-Router Logs verkauft?
Nein. FastPwd hat kein Konto und leitet keinen Modellverkehr weiter. Was es kann: gängige sensible Felder maskieren, bevor Text dieses Gerät verlässt, und ein Passwort, das einen Kollegen erreichen muss, über den Einmal-Link schicken, Schlüssel hinter # in der URL. Sofort nutzbar. Lebende SSH-Schlüssel und Cloud-Token gehören nicht in einen Prompt.
Denselben Canary durch ein sofort nutzbares Tool schicken
Ist das, was Sie senden wollen, ein Ticket, ein Log oder ein Stacktrace, öffnen Sie die FastPwd-Schwärzung. Keine Anmeldung. Fügen Sie einen wegwerfbaren Absatz ein und vergleichen Sie die Maske: Telefone, Ausweisnummern, E-Mails und gängige API-Key-Formen sollen nicht als Klartext weggehen. Ausgangstext wird standardmäßig nicht hochgeladen. Ein ganzes Passwort, das die Regeln nicht treffen, ist nicht „fast genug“. Machen Sie einen Platzhalter daraus.
Muss ein Einmal-Testpasswort einen Kollegen erreichen – kein Modell –, öffnen Sie den Einmal-Link und erzeugen Sie s.html?id={id}#{key}. Vergleichen Sie Network: In der Anfragezeile soll nur id stehen. Der Schlüssel hinter der Raute darf nicht erscheinen. Das löst „ein Geheimnis einmal an eine Person geben“. Es macht keinen LLM-Router sicher.
Wenn Sie das nächste Mal „6TB-LLM-Router“ oder „SSH-Schlüssel im Aufruf-Dump“ sehen, stellen Sie drei Fragen. Erstens: Ist der TLS-Endpunkt dieses JSON die offizielle API oder ein Drittanbieter-Router. Zweitens: Steht im Text, den Sie senden wollen, noch ein ganzes Geheimnis, das sich einloggen kann. Drittens: Ist ein Passwort, das eine Person erreichen muss, hinter die Raute gewandert statt in einen Agenten. Eine Beobachtung, die Sie wiederholen können, gehört in Ihre eigene Review-Liste.
Weiterlesen
Bevor Sie Tickets und Logs in eine KI einfügen, welche Felder dieses Gerät verlassen: Bevor Sie Tickets und Logs in eine KI einfügen: Welche Felder dieses Gerät verlassen. Wie Sie Network mit einem Canary auf browserlokale Verschlüsselung durchsuchen: So prüfen Sie, dass browserlokale Verschlüsselung keinen Klartext sendet. Warum der Teil hinter # standardmäßig nicht in HTTP geht: Warum sich ein Schlüssel hinter der URL-Raute eignet – und wann der Schutz fällt.