Sicherheit in modellbasierten Systemen
Prompt-Injektion
Jeder Text, den das System liest — E-Mail, eine Website, ein Dokument, ein Kommentar — kann Anweisungen enthalten. Das Modell unterscheidet Ihre Anweisung nicht von Text, der wie eine Anweisung aussieht.
Die Regel: Externer Inhalt ist Daten, nie ein Befehl. Aus ihm abgeleitete Aktionen mit Wirkung erfordern menschliche Freigabe oder eine harte Regel im Code.
Ausgabe als Eingabe
Führt, sendet oder speichert das System das vom Modell Erzeugte, behandeln Sie die Ausgabe als nicht vertrauenswürdige Eingabe: Schemavalidierung, Zeichen-Escaping und eine Liste erlaubter Aktionen. Ein Modell, das eine Abfrage erzeugt, sollte sie nicht direkt gegen eine Datenbank mit breiten Berechtigungen ausführen.
Ein Leck in die andere Richtung
Im Prompt gesendete sensible Informationen und abgerufene Abschnitte, die der Nutzer nicht sehen darf. Die Berechtigungsfilterung muss auf der Abrufstufe geschehen, und ein Systemprompt ist kein Geheimnis — man kann das Modell dazu bringen, ihn zu offenbaren.
Im Detail
Führen Sie als Teil des Testens eine Reihe feindlicher Szenarien aus: Dokumente mit versteckten Anweisungen, Versuche, Anweisungen zu extrahieren, und Eingabe, die Berechtigungen zu erweitern versucht. Bewahren Sie sie als Regression, denn eine Modell- oder Prompt-Änderung kann Geschlossenes wieder öffnen.