System Prompt Leakage
- Eingabe / Prompt
- Ausgabe / Aktion
Ein Angreifer extrahiert über gezielt gestaltete Abfragen den System-Prompt — operative Anweisungen, Tool-Definitionen oder eingebettete Geheimnisse — und legt so Implementierungsdetails offen, die privat bleiben sollten.
Was es ist
Der System Prompt sollte niemals als Geheimnis behandelt oder als Sicherheitskontrolle genutzt werden — das eigentliche Risiko der Offenlegung des System Prompts liegt daher nicht darin, dass der Wortlaut bekannt wird, sondern darin, was diese Offenlegung darüber preisgibt, wie Sicherheit tatsächlich umgesetzt wurde. Bettet ein Prompt Zugangsdaten, Connection Strings oder interne Schwellenwerte ein, legt eine Offenlegung diese direkt offen; kodiert er Filterregeln oder Rollen-/Berechtigungsstrukturen, liefert eine Offenlegung Angreifenden eine Landkarte dessen, was genau zu umgehen oder anzugreifen ist. Selbst wenn der genaue Wortlaut nie durchsickert, werden Angreifende, die mit dem System interagieren, die meisten seiner Guardrails und Formatregeln meist einfach durch Ausprobieren und Beobachten der Ergebnisse ableiten — eine Offenlegung beschleunigt diese Entdeckung, statt der einzige Weg dorthin zu sein. In einem Multi-Agenten-System kodiert ein System Prompt oft die Architektur selbst: welche Spezialisten-Agenten existieren, wie der Orchestrator jeden davon anspricht, und welche Routing-Logik zwischen ihnen entscheidet. Das Leaken dieses Prompts offenbart nicht nur Anweisungen, sondern Topologie — genug, damit Angreifende einen Spezialisten-Agenten direkt ansprechen und die Kontrollen auf Orchestrierungsebene umgehen können, die eigentlich die Kontrolle darstellten.
Arten
- Offenlegung sensibler Funktionalität
- Der geleakte Prompt legt Zugangsdaten, Connection Strings oder Architekturdetails offen, die Angreifende direkt gegen die Systeme wiederverwenden können, mit denen der Agent verbunden ist.
- Offenlegung interner Regeln
- Der geleakte Prompt legt operative Schwellenwerte oder Geschäftsregeln offen, sodass Angreifende Anfragen so gestalten können, dass sie knapp innerhalb dieser Grenzen bleiben, oder einen anderen Weg finden, sie zu umgehen.
- Offenlegung von Filterkriterien
- Der geleakte Prompt legt genau offen, welche Muster eine Zurückweisung auslösen, sodass Angreifende sich am Filter vorbeiformulieren können, statt ihn auszulösen.
- Offenlegung von Rollen und Berechtigungen
- Der geleakte Prompt legt die interne Rollen- oder Berechtigungsstruktur der Anwendung offen und weist Angreifende direkt auf ein Ziel für Rechteausweitung hin.
Angriffsszenarien
Ein Nutzer bringt einen Orchestrator-Agenten dazu, seine eigenen Routing-Anweisungen preiszugeben, wodurch sichtbar wird, welche Spezialisten-Agenten existieren und wie sich jeder direkt ansprechen lässt — unter Umgehung der vorgesehenen Routing-Logik.
Leck eingebetteter Zugangsdaten
Ein System Prompt enthält einen Satz Zugangsdaten für ein Tool, auf das der Agent Zugriff hat; sobald der Prompt durchsickert, verwenden Angreifende diese Zugangsdaten direkt gegen das eigene System des Tools.
Guardrail-Umgehung über geleakte Einschränkungen
Angreifende extrahieren die Inhaltseinschränkungen eines System Prompts und gestalten dann eine gezielte Prompt Injection, die genau diese nun bekannten Einschränkungen aushebelt.
Offenlegung der Orchestrator-Routing-Logik
Eine Person bringt einen Orchestrator-Agenten dazu, seine eigenen Routing-Anweisungen zu rezitieren, wodurch offengelegt wird, welche Spezialisten-Agenten existieren und wie sich jeder direkt ansprechen lässt — unter vollständiger Umgehung der vorgesehenen Routing-Logik.
Abwehrmaßnahmen
- Geheimnisse vollständig aus Prompts heraushalten
- Lagern Sie Zugangsdaten, Connection Strings und Berechtigungsstrukturen in Systeme aus, auf die das Modell nicht direkt zugreift, per Least Privilege Agent — ein Geheimnis, das nie im Prompt stand, kann nicht daraus durchsickern.
- Sich nicht auf den Prompt zur Verhaltenskontrolle verlassen
- Setzen Sie Filterung, Inhaltseinschränkungen und Geschäftsregeln in deterministischen externen Systemen durch statt in Prompt-Anweisungen, da eine Prompt Injection außer Kraft setzen kann, was der Prompt das Modell lediglich bittet zu tun.
- Die Ausgabe unabhängig absichern
- Prüfen Sie die Ausgabe des Modells auf Konformität mit einem externen System, statt der eigenen Befolgung seiner Anweisungen durch das Modell zu vertrauen, im Einklang mit Output Validation / Schema Enforcement.
- Autorisierung außerhalb des LLM durchsetzen
- Halten Sie Rechtetrennung und Berechtigungsprüfungen in deterministischem, auditierbarem Code; setzen Sie, wo eine Aufgabe unterschiedliche Zugriffsebenen benötigt, separate Agenten ein, die jeweils per Least Privilege Agent eingegrenzt sind, statt eines einzelnen Agenten, dessen Prompt mehrere Rollen beansprucht.