Indirekter Prompt-Injection-Angriff
Ein Angriff, bei dem der Angreifer schädliche Inhalte beispielsweise in Informationen einschleust, die wahrscheinlich in eine Antwort auf einen Prompt einfließen. Werden diese Informationen abgerufen, führen die schädlichen Inhalte dazu, dass sich das KI-Modell unerwartet oder schädlich verhält. Siehe Prompt-Injection-Angriff und passiver Prompt-Injection-Angriff
Was ist ein indirekter Prompt-Injection-Angriff?
Ein indirekter Prompt-Injection-Angriff liegt vor, wenn ein Angreifer schädliche Anweisungen oder Inhalte in externe Informationen einschleust, die später von einem KI-Modell, einer Anwendung oder einem Agenten beim Verarbeiten einer Anfrage abgerufen oder verarbeitet werden.
Direkte vs. indirekte Prompt-Injection
Es gibt direkte und indirekte Formen der Prompt-Injection. Eine direkte Prompt-Injection liegt vor, wenn ein Angreifer schädliche Anweisungen oder Inhalte direkt in einen Modell-Prompt eingibt. Bei einer indirekten Prompt-Injection verbirgt der Angreifer schädliche Anweisungen oder Inhalte in Materialien, die vom Modell verarbeitet werden, beispielsweise auf Webseiten, in Dateien in Repositorys, in E-Mails, in hochgeladenen Dokumenten oder in API-Eingaben.
Hier sind einige wesentliche Unterschiede zwischen direkter und indirekter Prompt-Injection:
| Direkte Prompt-Injektion | Indirekte Prompt-Injektion | |
|---|---|---|
Kernkonzept | Die schädliche Nutzlast wird vom Benutzer direkt in einen Modell-Prompt eingefügt. | Die schädliche Nutzlast ist in externen Materialien eingebettet, die das Modell aufnimmt oder abruft. |
Zielsysteme | Benutzerorientierte Chatbots, KI-gestützte Suchoberflächen, öffentliche API-Endpunkte, eigenständige dialogorientierte Modelle. | Systeme zur abrufgestützten Generierung (Retrieval-Augmented Generation, RAG), autonome KI-Agenten mit Zugriff auf Tools, Tools zur Zusammenfassung von E-Mails oder Dokumenten sowie KI-Assistenten zum Durchsuchen oder Scrapen des Internets. |
Angriffsauslöser | Unmittelbar. Der Angriff wird ausgelöst, sobald der Angreifer den Prompt an das Modell übermittelt. | Verzögert und bedingt. Der Angriff wird ausgelöst, wenn das Modell die externe Ressource verarbeitet – entweder im Rahmen eines autonomen Prozesses oder wenn eine Person das Modell verwendet. |
Ausführungsmechanik | Die schädliche Nutzlast setzt die Einschränkungen des System-Prompts außer Kraft oder umgeht sie durch Kontextwechsel, Rollenspiele mit Figuren, hypothetische Szenarien oder Präfix-Injektion (wobei das Modell gezwungen wird, seine generierte Antwort mit einer bejahenden Formulierung zu beginnen, die Schutzmechanismen umgeht). | Das Modell verarbeitet kompromittierte Inhalte wie Schadcode zusammen mit legitimen Eingaben. Es kann die beiden nicht voneinander trennen und führt die Anweisungen des Schadcodes aus. |
So funktioniert indirekte Prompt-Injection
Indirekte Prompt-Injection erfolgt in einem mehrstufigen Prozess. Die vier wesentlichen Schritte sind:
1. Einschleusung: Der Angreifer schleust schädliche Anweisungen oder Inhalte in externe Materialien ein, etwa in eine Website, ein Dokument, eine E-Mail oder einen Datenbankeintrag. Um diese Nutzlast zu verbergen, kann der Angreifer unsichtbaren Text (weiß auf weiß), HTML-Kommentare oder Metadaten verwenden.
2. Weitergabe: Ein Large Language Model (LLM), eine KI-Anwendung oder ein autonomer KI-Agent nimmt das manipulierte Material auf. Dabei kann es sich beispielsweise um eine RAG-Abfrage in einer Vektordatenbank, die Zusammenfassung eines E-Mail-Postfachs oder das Aufrufen einer Webseite handeln. Die Schadlast wird durch das KI-System oder den Workflow des Agenten weitergegeben.
3. Ausführung: Das Modell verarbeitet die schädlichen Anweisungen oder Inhalte zusammen mit legitimen Eingaben, etwa der Eingabe eines Benutzers an das Modell. Wenn das Modell schädliche Anweisungen nicht von legitimen Inhalten unterscheiden kann, führt es möglicherweise die eingebetteten Anweisungen aus.
4. Auswirkungen: Wenn das KI-System oder der Agent diesen schädlichen Anweisungen folgt, kann es bzw. er die Ziele des Angreifers umsetzen. Dazu können die Offenlegung sensibler Daten, die Änderung von Systemeinträgen, das Versenden nicht autorisierter E-Mails oder die Bereitstellung ungenauer oder unangemessener Inhalte für den Benutzer gehören, der eine legitime Eingabeaufforderung erstellt hat.
Reale Angriffsszenarien und Angriffsvektoren
Angreifer könnten eine Vielzahl von Angriffsvektoren nutzen, um indirekte Prompt-Injections durchzuführen. Mit dieser Technik könnten sie unterschiedlichste Ziele verfolgen, die sich gegen Unternehmen richten. Betrachten wir einige Beispiele aus der Praxis:
Manipulation des Einstellungsverfahrens: Ein Angreifer könnte versteckte Anweisungen in einen Lebenslauf im PDF-Format einbetten, die ein KI-gestütztes System zur Bewerberauswahl dazu veranlassen, den Kandidaten hoch einzustufen und negative Informationen zu ignorieren. Diese Taktik könnte nicht nur dazu dienen, einer Person zu einem ersten Vorstellungsgespräch zu verhelfen, sondern auch Teil eines umfassenderen Plans zur Wirtschaftsspionage sein.
Durchführung von Phishing-Angriffen auf Kunden: Wenn ein Angreifer weiß, dass ein bestimmtes Unternehmen einen KI-gestützten Kundensupport einsetzt, könnte er über ein Webformular oder per E-Mail eine Supportanfrage einreichen. Diese Anfrage würde ein scheinbar legitimes Anliegen enthalten, das sich auf das Konto eines echten Kunden bezieht und mit versteckten, eingebetteten Anweisungen versehen ist. Die neuen Anweisungen könnten die bisherigen Anweisungen des Modells außer Kraft setzen und es dazu veranlassen, dem echten Kunden eine E-Mail mit einem angehängten Phishing-Link zu senden.
Betrug im Beschaffungsprozess: Ein Angreifer könnte die Website eines B2B-Anbieters infiltrieren und dort schädliche Anweisungen einbetten, die von einem KI-Beschaffungsagenten gelesen würden. Der Agent könnte die Website durchsuchen, um Preisdaten zu extrahieren, dabei jedoch auch die neuen Anweisungen lesen. Diese könnten bestehende Vorgaben außer Kraft setzen und den Agenten dazu veranlassen, umgehend Geld auf das Konto des Angreifers zu überweisen.
Präventions- und Abwehrstrategien
Angesichts der Vielzahl potenzieller Angriffsvektoren kann es schwierig sein, indirekte Prompt-Injection-Angriffe zu verhindern und sich dagegen zu schützen. Die Umsetzung von drei bewährten Maßnahmen kann Unternehmen jedoch dabei helfen, die Wahrscheinlichkeit erfolgreicher Angriffe zu verringern.
1. Abgerufene externe Daten standardmäßig als nicht vertrauenswürdig behandeln: KI-Systeme sollten alle externen Daten als unverarbeitete, nicht vertrauenswürdige Eingaben betrachten und verhindern, dass diese Eingaben als ausführbare Systemanweisungen verwendet werden. Ergänzend sollten Unternehmen bei Modellen und Agenten das Prinzip der geringsten Rechte anwenden und deren Handlungs- und Zugriffsrechte bei der Verarbeitung solcher nicht vertrauenswürdigen externen Daten beschränken.
2. Doppelte Schutzmechanismen (für Ein- und Ausgabe) implementieren: Unternehmen sollten sowohl für die Eingaben als auch für die Ausgaben von Modellen KI-Schutzmechanismen einsetzen. Eingabeschutzmechanismen können verhindern, dass Modelle überhaupt mit schädlichen Anweisungen und Inhalten in Berührung kommen, indem sie nach Mustern für Prompt-Injection oder die Außerkraftsetzung von Systemvorgaben suchen. Ausgabeschutzmechanismen können Ausgaben – ob Text oder Aktionen von Agenten – prüfen und validieren, bevor das Modell sie ausführt. Solche Schutzmechanismen könnten beispielsweise externe Links blockieren und unbefugte Aufrufe anderer Systeme verhindern.
3. Genehmigungen durch Menschen (Human-in-the-Loop, HITL) für sensible Aktionen einsetzen: Wenn für bestimmte Aktionen von Modellen und Agenten eine menschliche Genehmigung erforderlich ist, lassen sich groß angelegte Angriffe stoppen oder zumindest in ihren Auswirkungen begrenzen. Unternehmen könnten beispielsweise vorschreiben, dass von Agenten ausgeführte Finanztransaktionen ab einem bestimmten Betrag, umfangreiche Änderungen an Datenbanken oder Änderungen an Kundenkontoinformationen von Menschen genehmigt werden müssen.
Häufig gestellte Fragen
Was ist das „Confused-Deputy-Problem“ bei KI-Agenten?
Das „Confused-Deputy-Problem“ beschreibt eine Situation, in der ein Benutzer mit eingeschränkten Berechtigungen einen KI-Agenten mit höheren Berechtigungen (den „Stellvertreter“) dazu verleitet, in seinem Namen eine Aktion auszuführen. Der Benutzer könnte den Agenten beispielsweise mittels indirekter Prompt-Injection dazu bringen, indem er schädliche Befehle in Inhalte einbettet, die ansonsten wie legitime Eingaben erscheinen.
Wie gefährden indirekte Prompt-Injections Systeme mit Retrieval-Augmented Generation (RAG)?
Angreifer können Retrieval-Augmented-Generation-Systeme (RAG) nutzen, um indirekte Prompt-Injection-Angriffe durchzuführen. Wenn es ihnen gelingt, schädliche Anweisungen in ein Dokument einzubetten, das in die Vektordatenbank des RAG-Systems aufgenommen wird, könnten diese Anweisungen von einem Modell, das auf die Datenbank zugreift, gelesen (und ausgeführt) werden.
Wie unterscheidet sich Prompt-Sandboxing von der Berechtigungskontrolle für KI-Modelle und -Agenten?
Prompt-Sandboxing verhindert, dass Modelle und Agenten durch bösartige Eingaben getäuscht oder verwirrt werden. Bei dieser Technik können Daten- und Anweisungskanäle getrennt oder ein zweites Modell zur Bereinigung nicht vertrauenswürdiger Eingaben eingesetzt werden. Die Berechtigungskontrolle schränkt ein, was ein Modell oder Agent tun kann, selbst wenn es bzw. er bösartige Anweisungen erhält. Unternehmen können das Prinzip der geringsten Rechte anwenden, eine rollenbasierte Zugriffskontrolle implementieren oder Menschen in den Prozess einbinden. So lässt sich sicherstellen, dass selbst verwirrte Modelle und Agenten keine Handlungen ausführen, die schwerwiegende Schäden verursachen.
Können herkömmliche Web Application Firewalls (WAFs) indirekte Prompt-Injection-Angriffe erkennen?
Herkömmliche Web Application Firewalls (WAFs) sind nicht darauf ausgelegt, indirekte Prompt-Injection-Angriffe zuverlässig zu erkennen. Diese Lösungen schützen den eingehenden HTTP-Datenverkehr und Benutzeranfragen, doch indirekte Prompt-Injection-Angriffe gelangen über Datenquellen von Drittanbietern in das System. Darüber hinaus suchen WAFs nach Code, der wahrscheinlich auf einen Angriff hindeutet. Indirekte Prompt-Injection-Angriffe verwenden jedoch natürlichsprachliche Anweisungen, die von WAFs nicht als Bedrohung eingestuft würden.
Wie lassen sich KI-Systeme und -Anwendungen während der Inferenz und zur Laufzeit schützen?
Die Absicherung von KI-Systemen und -Anwendungen während der Inferenz und zur Laufzeit erfordert Kontrollen, die Prompts, Antworten, Agentenaktionen und die Nutzung von Tools während der Interaktionen überprüfen. Eine KI-spezifische Laufzeitsicherheit kann dazu beitragen, Prompt-Injection-Angriffe zu blockieren, die Offenlegung sensibler Daten zu verhindern, Richtlinien durchzusetzen und zu steuern, wie Modelle und Agenten mit Benutzern, Daten, APIs und verbundenen Tools interagieren.
Welche Funktionen von F5 unterstützen die KI-Sicherheit in Unternehmen?
F5 AI Guardrails hilft dabei, Laufzeitrichtlinien durchzusetzen und vor Risiken wie Prompt-Injection, Datenlecks, schädlichen Ausgaben und unsicheren Agentenaktionen zu schützen. F5 AI Red Team nutzt adversariale Tests, um Schwachstellen und Sicherheitslücken zu identifizieren. F5 AI Gateway bietet einen zentralen Kontrollpunkt zur Steuerung des Zugriffs auf Modelle, Agenten und Tools, während F5 Workforce AI Security Transparenz über die genehmigte und nicht genehmigte KI-Nutzung im gesamten Unternehmen schafft. Zusammen bilden diese Funktionen einen Teil der F5 AI Security Platform. Für einen umfassenderen Schutz von Anwendungen, APIs und verteilten Umgebungen vereint die F5 Application Delivery and Security Platform (ADSP) Funktionen wie den Schutz von Webanwendungen und APIs, Bot-Management, DDoS-Abwehr und Anwendungsbereitstellung.

