Lernen

Warum Prompt Injection nicht nur Eingabevalidierung ist

Warum klassische Eingabevalidierung für strukturierte Grenzen nötig bleibt, aber über Quellvertrauen, Anweisungsautorität, Autorisierung und Informationsfluss bei natürlicher Sprache nicht entscheiden kann.

Von Norbert HofmannVeröffentlicht: 2026-09-26Zuletzt geprüft: 2026-09-26Stufe: GrundlagenZielgruppe: Security Engineers, Entwickler, AI Engineers, Technisch interessierte Leser
Bereich
Lernen - Kontrollgrenzen
Kernidee
Gültige Inhalte können trotzdem anweisungsähnliche Bedeutung tragen
Eingabevalidierung
Nötig für strukturierte Werte; keine Vertrauens- oder Berechtigungskontrolle
Durchsetzung
Autorisierung und Flussrichtlinien außerhalb des Modells
Beispiele
Synthetisch, fiktiv und harmlos
Inhaltsverzeichnis

Das Missverständnis: "Einfach die Eingabe validieren"

Wer aus der Anwendungssicherheit kommt, fragt oft, ob Prompt Injection nicht einfach fehlende Eingabevalidierung ist: Prompt prüfen, gefährliche Teile entfernen, Problem gelöst. Die Frage ist berechtigt, und die Antwort lautet: teilweise, aber anders als erwartet.

Klassische Eingabevalidierung prüft, ob ein Wert einer erwarteten Syntax, einem Typ, einer Länge, einem Enum, einem Wertebereich, einem Dateiformat oder einem Protokollvertrag entspricht. Prompt Injection betrifft dagegen, wie bedeutungstragende natürlichsprachliche oder multimodale Inhalte im Modellkontext interpretiert werden, auch Inhalte, die für ihren fachlichen Zweck völlig gültig sind.

Der Artikel baut auf Anweisungen und Anweisungshierarchien, Vertrauensgrenzen und Modellkontext und RAG und Retrieval auf.

Was klassische Eingabevalidierung gut kann

Eingabevalidierung ist die richtige deterministische Kontrolle überall dort, wo die Anwendung die erwartete Form eines Werts kennt: Kennungen, Typen, Längen, Enums, Zahlenbereiche, Datumswerte, Dateiformate, Zielformate, Tool-Parameter, Schemas und Protokollnachrichten.

Sie weist fehlerhafte Daten früh ab, senkt Parser- und Verarbeitungsrisiken und liefert späteren Kontrollen saubere, typisierte Werte. Nichts in diesem Artikel spricht dafür, sie abzuschaffen.

Warum natürliche Sprache anders ist

Ein Support-Ticket, eine E-Mail oder ein Dokument kann ein strukturiertes Datei- oder Nachrichtenformat haben. Seine natürlichsprachlichen Inhaltsfelder bieten aber keine parsergestützte semantische Grenze zwischen Geschäftsdaten und Anweisungen an das Modell. Dieselben Wörter können Zitat, Beschreibung, Bitte oder etwas sein, das ein Modell als Vorgabe behandelt, je nach Kontext.

Ein Validator kann bestätigen, dass der Text eine Zeichenkette mit zulässiger Länge und Kodierung ist. Er kann nicht deterministisch bestimmen, wie ein Modell diesen Text interpretiert, sobald er modellsichtbar wird.

Gültige Geschäftsinhalte können ein Modell beeinflussen

Prompt Injection kann über völlig gültige Inhalte ankommen: Nutzernachricht, Support-Ticket, E-Mail, Dokument, Wiki-Seite, Webseite, Suchergebnis, Tool-Ausgabe, OCR-Text oder abgerufenen Chunk. Siehe Direkte Prompt Injection und Indirekte Prompt Injection.

Derselbe Text kann legitime Geschäftsdaten sein und trotzdem anweisungsähnliche Bedeutung enthalten. Ihn abzulehnen kann die Fachfunktion brechen; gültige Geschäftsinhalte erhalten dadurch nicht automatisch Anweisungsautorität oder Anwendungsberechtigung; fachliche/Quellautorität wird getrennt über Provenienz und Source-of-Truth-Regeln entschieden.

Syntax, Semantik und Autorität

Drei verschiedene Fragen zum selben Inhalt
FrageBeispielprüfungWer sie beantworten kann
SyntaxIst das eine wohlgeformte Zeichenkette, ID oder ein Dokument?Deterministischer Validator oder Parser
SemantikWas bedeutet der Text, und könnte ein Modell einen Teil als Vorgabe behandeln?Semantische Analyse kann Bedeutung einschätzen; kein deterministischer Validator garantiert die Modellinterpretation, Detektoren liefern probabilistische Signale
AutoritätIst diese Quelle maßgeblich, und darf dieser Principal diese Wirkung auslösen?Anwendungseigene Provenienz, Autorisierung und Flussrichtlinien

Syntaktisch gültig, schemakonform, wohlgeformt, sicher kodiert oder von einem Parser akzeptiert zu sein, begründet weder Quellvertrauen noch Anweisungsautorität, Nutzerautorisierung, Datenflusserlaubnis oder Aktionsautorisierung.

Warum Stichwortsperren und "Bereinigung" unvollständig sind

Freie Sprache zu bereinigen ist nicht dasselbe, wie ihre Bedeutung zu neutralisieren. Das Entfernen von Zeichen, Trennzeichen oder Stichwörtern kann legitime Daten beschädigen und trotzdem Umschreibungen, andere Sprachen, indirekte Formulierungen, multimodale Inhalte und spätere Transformationen wie Zusammenfassung oder OCR verfehlen.

Inhaltsprüfung ist nützlich, aber probabilistisch

Eingabe- und Inhaltsprüfung und Erkennung von Prompt Injection können die Exposition senken, verdächtige Inhalte in eingeschränkte Abläufe lenken und Evidenz erzeugen. Klassifikatoren für natürliche Sprache haben falsch positive und falsch negative Ergebnisse.

Ein Detektor, der Inhalte markiert, erteilt oder verweigert selbst keine Berechtigung, und ein Detektor, der nichts findet, darf ebenfalls keine Berechtigung erteilen. Die Berechtigungsentscheidung bleibt bei Autorisierung und Flussrichtlinien.

Wo Allowlists gut funktionieren

Allowlists sind am stärksten, wo die Domäne tatsächlich endlich und strukturiert ist: Enum-Auswahl, Ressourcen-IDs, Operationsnamen, freigegebene Tool-Namen, Zielklassen und begrenzte Zahlenwerte.

Beliebige natürliche Sprache lässt sich nicht per Allowlist erfassen, ohne ihre Fachfunktion zu verlieren. Freitext bleibt variabler Inhalt; Entscheidungen fallen an den strukturierten Werten drumherum.

Strukturierte Tool-Argumente und Schemas

Ein Tool-Schema oder JSON-Schema prüft die Form: Pflichtfelder, Typen, Formate, Enums. Es entscheidet nicht, ob die angeforderte Aktion erlaubt ist, ob ein Dokument maßgeblich ist oder ob ein Ziel zulässig ist.

Zuerst werden die vorgeschlagenen Argumente validiert, dann geht die aufgelöste, typisierte Aktion an die Agentenautorisierung und die Flussrichtlinien.

Die Analogie zur klassischen Injection: nützlich und begrenzt

Klassische Injection und Prompt Injection haben gemeinsam, dass auf irgendeiner Ebene Daten und Steuerung verwechselt werden. Diese Intuition hilft.

SQL-Parametrisierung funktioniert, weil SQL eine formale Grammatik hat: Die Anwendung legt die Abfragestruktur fest und übergibt Werte getrennt, und der Datenbankparser setzt die Trennung deterministisch durch. Natürlichsprachlicher Modellkontext bietet in der Regel keine ebenso deterministische, parsergestützte Trennung zwischen "Anweisung" und "Daten".

Trennzeichen, Labels und Spotlighting: Robustheit, keine Durchsetzung

Trennzeichen, XML-artige Tags, Labels und Spotlighting / Datenmarkierung können einem Modell helfen, Daten von Anweisungen zu unterscheiden, und die Robustheit verbessern.

Sie werden aber weiterhin vom Modell interpretiert. Sie sind keine deterministischen Vertrauensgrenzen und ersetzen keine Kontrollen außerhalb des Modells.

Provenienz und Source-of-Truth-Regeln

Datenprovenienz hält fest, woher Inhalte stammen und was mit ihnen geschah. Source-of-Truth-Regeln legen fest, welche Quelle für einen bestimmten Zweck maßgeblich ist.

Beides folgt nicht aus Gültigkeit. Ein gültiges, relevantes Dokument kann trotzdem die falsche Autorität sein. Provenienz- und Autoritätsmetadaten bleiben anwendungseigen und außerhalb bearbeitbarer Inhalte.

Autorisierung und Least Privilege

Autorisierung fragt, ob dieser Principal diese Aktion auf dieser Ressource mit diesen Parametern im aktuellen Zustand ausführen darf. Sie ist deterministisch und stützt sich auf anwendungseigene Identität, Mandant und ACLs, nie auf Behauptungen im Text.

Least Privilege begrenzt den Schaden, wenn eine Beeinflussung gelingt. Das Risiko von Prompt Injection hängt von Inhaltseinfluss, Modelleinfluss, erreichbaren Daten und Fähigkeiten sowie davon ab, ob deterministische Anwendungskontrollen die Wirkung verhindern.

Informationsflusskontrolle und Zielrichtlinien

Informationsflusskontrolle fragt, ob Daten von einer Quelle oder Klassifizierung zu einer Senke oder einem Ziel fließen dürfen. Eine wohlgeformte Adresse oder URL kann trotzdem ein verbotenes Ziel sein.

Ausgabevalidierung und senkenspezifische Kodierung

Ausgabevalidierung prüft, ob eine vorgeschlagene Ausgabe dem Vertrag der Anwendung oder Senke entspricht: Struktur, Format, zulässige Werte.

Senkenspezifisches Kodieren, Escaping und Parametrisieren sind ein eigener Schritt. Richtig an ihrer Senke eingesetzt, verhindern sie Klassen wie SQL-, HTML- oder Command-Injection. Sie machen aus nicht vertrauenswürdiger Sprache keine vertrauenswürdigen Anweisungen, und Modellausgabe bleibt variable Daten, auch wenn die Eingabe die Validierung bestanden und das Modell seine Anweisungen befolgt hat.

Die Kontrollen im Vergleich

Was jede Kontrolle beantwortet und was nicht
KontrolleBeantwortete FrageWas sie nicht beantwortet
EingabevalidierungIst dieser Wert für dieses Feld wohlgeformt?Quellautorität, Anweisungsautorität oder Berechtigung
Inhaltsprüfung / ErkennungZeigt dieser Inhalt verdächtige anweisungsähnliche Muster?Berechtigung; sie liefert ein probabilistisches Signal
Provenienz / QuellautoritätWoher stammt der Inhalt, was geschah mit ihm, und ist er für diesen Zweck maßgeblich?Ob Offenlegung oder Aktion erlaubt ist
Anweisungshierarchie / FramingWie soll das Modell modellsichtbare Anweisungen gewichten?Durchsetzung; sie prägt nur Modellverhalten
Autorisierung / Least PrivilegeDarf dieser Principal diese Aktion auf dieser Ressource mit diesen Parametern ausführen?Ob Inhalte wahr oder maßgeblich sind
InformationsflusskontrolleDürfen diese Daten von dieser Quelle oder Klassifizierung zu dieser Senke fließen?Ob die Aktion selbst autorisiert ist
AusgabevalidierungEntspricht die vorgeschlagene Ausgabe dem Vertrag der Senke oder Anwendung?Autorisierung oder senkenspezifische Kodierung
Kodierung / Escaping / ParametrisierungIst dieser Wert an genau dieser Senke sicher dargestellt?Ob die Sprache vertrauenswürdig oder maßgeblich ist

Synthetische Beispiele

01Support-Ticket

Ticket T-100 besteht die Typ- und Längenprüfung. Neben der normalen Beschreibung enthält es einen sachfremden, anweisungsähnlichen Satz.

02Entscheidung

Das Ticket bleibt variabler Geschäftsinhalt ohne Anweisungsautorität; die Berechtigungen des Support-Assistenten decken die sachfremde Aktion nicht ab, also passiert nichts.

01E-Mail-Zusammenfassung

Eine wohlgeformte Nachricht wird angenommen. Die Inhaltsprüfung markiert einen Abschnitt als anweisungsähnlich.

02Entscheidung

Der Befund wird protokolliert. Hätte der Detektor ihn übersehen, würde die Autorisierung trotzdem jede Aktion außerhalb des Auftrags blockieren.

01JSON-Tool-Aufruf{ "action": "read", "resourceId": "case-B7" }
02Entscheidung

Schemakonform, aber der Nutzer hat keinen Zugriff auf case-B7. Abgelehnt: Form ist keine Autorisierung.

01HTML-Darstellung

Vom Modell erzeugter Freitext besteht das Ausgabeschema für ein Zusammenfassungsfeld.

02Entscheidung

Beim Rendern wird er getrennt davon HTML-escaped: Ausgabevalidierung ist keine senkenspezifische Kodierung.

01RAG-Dokument

Ein hochrelevantes, wohlgeformtes Dokument ist abrufbar, aber das Register bestimmt seine Quelle nicht als Autorität für diese Richtlinienfrage.

02Entscheidung

Es wird nicht als offizielle Richtlinie dargestellt: Gültigkeit und Relevanz sind keine Autorität.

01Operation auf der Allowlist

Operation "export" und ein Limit von 50 bestehen Allowlist und Bereichsprüfung. Das Ziel example.test gehört zu keiner freigegebenen Zielklasse.

02Entscheidung

Die Zielrichtlinie lehnt den Fluss ab: mehrere unabhängige Prüfungen mit jeweils eigener Frage.

01Gleiche Bedeutung, andere Sprache

Eine neutrale Bitte steht einmal auf Englisch und einmal auf Deutsch mit gleicher Bedeutung da. Eine Wortliste für eine Sprache trifft nur eine Fassung.

02Lehre

Wortabgleich ist keine semantische Grenze; Entscheidungen gehören zu Kontrollen, die nicht vom Wortlaut abhängen.

Mehrschichtiges Kontrollmuster

Architektur-Checkliste

  • Jeden strukturierten Wert validieren: IDs, Enums, Bereiche, Formate, Tool-Argumente
  • Freitext als variablen Inhalt behandeln, egal wie gültig er ist
  • Inhaltsprüfung und Erkennung als Signale nutzen, nicht als Berechtigung
  • Identität, Mandant, ACLs und Provenienz außerhalb des Modelltexts halten
  • Jede aufgelöste Aktion deterministisch autorisieren
  • Informationsflusskontrolle auf Ziele und Senken anwenden
  • Ausgaben gegen den Senkenvertrag validieren, dann an der Senke kodieren oder parametrisieren
  • Erreichbare Daten und Fähigkeiten per Least Privilege begrenzen

Diese Checkliste ist Architekturempfehlung, keine aus einem Standard zitierte Anforderung.

Häufige Missverständnisse

Aussagen, die nicht stimmen

  • "Wenn der Prompt die Validierung besteht, ist er sicher."
  • "Stichwörter entfernen entfernt die Anweisung."
  • "Der Detektor hat nichts gefunden, also ist die Aktion erlaubt."
  • "Der Tool-Aufruf passt zum Schema, also ist er erlaubt."
  • "Trennzeichen verhindern, dass abgerufener Text das Modell beeinflusst."
  • "Escaping macht Ausgaben vertrauenswürdig."
  • "Eingabevalidierung ist für KI-Anwendungen nutzlos."

Quellen und Praxis

Wie dieser Artikel Quellen nutzt

OWASP
LLM01:2026 Prompt Injection, Cheat Sheet Series - Kontext zu Eingabevalidierung, Injection-Prävention, Abfrageparametrisierung, XSS-Prävention
NIST
AI 100-2e2025 und Glossar - Terminologie zu indirekter Prompt Injection
Microsoft
Defend against indirect prompt injection attacks, Input, Context, and Retrieval Hygiene

Die OWASP Cheat Sheets werden nur für klassische Anwendungssicherheit und senkenspezifische Kontrollen zitiert, nicht als Leitfaden zu Prompt Injection. Kontrollvergleich und Checkliste sind Architekturempfehlungen.

Häufige Fragen

Sollten wir Eingaben weiterhin validieren?
Ja. Jeder strukturierte Wert wird validiert. Nur entscheidet Validierung bei Freitext nicht über Vertrauen, Autorität oder Berechtigung.
Kann ein besserer Filter Prompt Injection lösen?
Filter und Detektoren senken die Exposition, sind aber probabilistisch. Wirkungen werden durch deterministische Kontrollen um das Modell herum verhindert.
Gibt es ein Prepared Statement für Prompts?
Im Allgemeinen nicht. Parametrisierung beruht auf einer formalen Grammatik; natürlichsprachlichem Kontext fehlt meist eine parsergestützte Trennung von Anweisung und Daten.
Schaffen Trennzeichen oder Spotlighting eine Grenze?
Sie verbessern die Robustheit, werden aber vom Modell interpretiert. Deterministische Vertrauensgrenzen sind sie nicht.
Wo helfen Allowlists?
Bei endlichen, strukturierten Domänen: Operationen, Tool-Namen, Ressourcen-IDs, Zielklassen und begrenzte Zahlen.
Ersetzt Escaping der Ausgabe die Autorisierung?
Nein. Escaping schützt eine bestimmte Senke; Autorisierung entscheidet, ob die Wirkung überhaupt erlaubt ist.
Was ist die wichtigste Erkenntnis?
Gültigkeit ist keine Autorität. Vertrauens-, Berechtigungs- und Flussentscheidungen gehören in anwendungseigene, deterministische Kontrollen.

Quellen

  1. LLM01:2026 Prompt InjectionOWASP GenAI Security Project · GuidanceGeprüft 2026-09-26
  2. Adversarial Machine Learning: A Taxonomy and Terminology of Attacks and Mitigations, NIST AI 100-2e2025NIST · Standard · 2025-03Geprüft 2026-09-26
  3. indirect prompt injectionNIST Glossary · Technical documentationGeprüft 2026-09-26
  4. Defend against indirect prompt injection attacksMicrosoft Learn · GuidanceGeprüft 2026-09-26
  5. Input, Context, and Retrieval HygieneMicrosoft Learn · GuidanceGeprüft 2026-09-26
  6. Injection Prevention Cheat SheetOWASP Cheat Sheet Series · GuidanceGeprüft 2026-09-26
  7. Query Parameterization Cheat SheetOWASP Cheat Sheet Series · GuidanceGeprüft 2026-09-26
  8. Cross Site Scripting Prevention Cheat SheetOWASP Cheat Sheet Series · GuidanceGeprüft 2026-09-26