Benchmark zeigt: Prompt-Injection-Detektoren scheitern an versteckten Angriffen in Tool-Ausgaben
Out of the box fängt der beste Detektor nur 51 % der Angriffe – nach Kalibrierung der Schwellenwerte dreht sich das Ranking komplett.
Mit KI erstellt◆ Fakten auf einen Blick
- Das taintgate-Projekt hat einen Benchmark mit 10 Open-Source-Prompt-Injection-Detektoren gegen 629 AgentDojo-Injection-Angriffe durchgeführt, die in Tool-Ausgaben eingebettet waren.
- Der Benchmark umfasste 629 Angriffe und 97 gutartige Fälle; die Angriffe waren in echte AgentDojo-Tool-Ausgaben eingebettet.
- Der beste Detektor out of the box fing 51% der Angriffe bei 2% False Positives.
- Metas Prompt Guard 2 fing out of the box 1% der Angriffe.
- Zwei Detektoren markierten 98% sicherer Tool-Ausgaben als Angriff.
- Bei Kalibrierung aller Schwellenwerte auf ein 2%-False-Positive-Budget ändert sich das Ranking: Prompt Guard 2 erreicht 99% auf ungesehenen Domains, und die zuvor alles fangenden Detektoren fallen auf etwa 0%.
Benchmark: Detektoren scheitern an versteckten Angriffen in Tool-Ausgaben
Das GitHub-Projekt taintgate hat einen Benchmark veröffentlicht, der zehn Open-Source-Prompt-Injection-Detektoren gegen 629 Angriffe testet, die in echte AgentDojo-Tool-Ausgaben eingebettet sind. Hinzu kommen 97 gutartige Fälle. Die Ergebnisse zeigen nach Angaben des Projekts, dass kein Detektor die meisten Angriffe abfängt, ohne zugleich normalen Datenverkehr zu blockieren. Out of the box erreicht der beste Detektor eine Erkennungsrate von 51 Prozent bei einer Falsch-Positiv-Rate von zwei Prozent. Metas Prompt Guard 2 fängt lediglich ein Prozent der Angriffe. Zwei weitere Detektoren markieren 98 Prozent sicherer Tool-Ausgaben fälschlich als Angriff. Der Benchmark verwendet für jeden Klassifikator den Schwellenwert 0,5 für die Klasse "Injection", mit Ausnahme von LLM Guard, das mit den mitgelieferten Standardwerten läuft. Kalibriert man alle Schwellenwerte auf ein Budget von zwei Prozent Falsch-Positiven, dreht sich das Ranking: Prompt Guard 2 erreicht dann 99 Prozent auf ungesehenen Domains, während die zuvor alles abfangenden Detektoren auf etwa null Prozent fallen.
Der Grund für diese Umkehrung liegt im Schwellenwert-Mechanismus: Jeder Detektor liefert für jede Eingabe einen Score, der die Wahrscheinlichkeit einer Injection angibt. Bei einer festen Schwelle von 0,5 werden nur Eingaben mit Score ≥ 0,5 blockiert. Da die Detektoren unterschiedliche Score-Verteilungen haben, führt dieselbe Schwelle zu sehr unterschiedlichen False-Positive- und True-Positive-Raten. Detektoren, die generell hohe Scores vergeben, blockieren bei 0,5 fast alles (98 % False Positives), während Detektoren mit konservativen Scores kaum etwas blockieren (Prompt Guard 2 nur 1 %). Kalibriert man die Schwelle jedes Detektors individuell so, dass genau 2 % der gutartigen Fälle fälschlich blockiert werden, verschiebt sich die Schwelle: Für die „alles fangenden“ Detektoren muss sie stark angehoben werden, wodurch ihre True-Positive-Rate auf nahezu null sinkt; für Prompt Guard 2 muss sie gesenkt werden, wodurch die True-Positive-Rate auf 99 % steigt. Die Wahl der Standard-Schwelle beeinflusst also das Ranking ebenso stark wie das Modell selbst, weil sie bestimmt, wie aggressiv ein Detektor Angriffe blockiert.
taintgate setzt auf Herkunft und Auswirkung statt Textklassifikation
Als Alternative zu textbasierten Detektoren stellt das Projekt taintgate einen Schutz vor, der nach Angaben der Entwickler nicht den Text, sondern die Provenienz einer Anweisung – stammt sie aus einer Tool-Ausgabe oder vom Nutzer? – und deren Auswirkung, etwa einen Geldtransfer, bewertet. In einer Banking-Demo liest ein Agent eine Rechnung; die Session wird daraufhin als "tainted" markiert. Versucht der Agent eine vom Angreifer injizierte Überweisung an die IBAN US133000000121212121212, verlangt taintgate eine menschliche Freigabe und blockiert die Aktion. Auch bei der echten Rechnungszahlung an UK12345678901234567890 wird eine Freigabe verlangt, weil die IBAN aus der Tool-Ausgabe stammt. Erst nach Bestätigung durch den Nutzer wird die Zahlung ausgeführt. Beide Zahlungen sind textlich nicht unterscheidbar – genau darin liegt nach Darstellung des Projekts das Problem reiner Textklassifikatoren. taintgate fragt in beiden Fällen nach, weil beide IBANs aus der Rechnung stammen.



