LLM-Prompt-Injection: Eine verborgene Gefahr
Prompt Injection bezeichnet Angriffe, bei denen manipulierte Eingaben die eigentlichen Anweisungen eines Sprachmodells überschreiben. Bei direkter Injection (Jailbreak) umgeht der Nutzer selbst die Sicherheitsvorgaben; bei indirekter Injection schmuggelt ein Angreifer Befehle über externe Inhalte wie Webseiten oder Dokumente ein. Schutz bieten die Trennung von System- und Nutzereingaben, eine Prüfung der Ausgaben und das Prinzip der minimalen Rechte.
Die technologische Evolution hat uns die Kraft der großen Sprachmodelle (LLM) gebracht, die die Art und Weise, wie wir mit Maschinen interagieren, revolutioniert haben. Doch mit großer Kraft kommt große Verantwortung – und neue Sicherheitsrisiken. Ein solches Risiko stellt die LLM-Prompt-Injection dar.
Prompt-Injection erfolgt, wenn ein Angreifer ein LLM durch speziell gestaltete Eingaben manipuliert, sodass das LLM unwissentlich die Intentionen des Angreifers ausführt. Dies kann sowohl direkt durch das „Knacken“ des Systems als auch indirekt durch manipulierte externe Eingaben geschehen und zu Datenexfiltration, Social Engineering und weiteren Problemen führen.
Direkte Prompt-Injectionen, auch bekannt als „Jailbreaking“, treten auf, wenn ein bösartiger Benutzer den zugrunde liegenden Systemprompt überschreibt oder offenlegt. Dies ermöglicht es Angreifern, Backend-Systeme zu missbrauchen, indem sie mit unsicheren Funktionen und Datenspeichern interagieren, auf die über das LLM zugegriffen werden kann.
Indirekte Prompt-Injectionen treten auf, wenn ein LLM Eingaben aus externen Quellen akzeptiert, die von einem Angreifer kontrolliert werden könnten, wie z.B. Webseiten oder Dateien. Der Angreifer kann eine Prompt-Injection in den externen Inhalt einbetten und so den Kontext des Gesprächs kapern, was zu einer weniger stabilen Steuerung der LLM-Ausgabe führt und es dem Angreifer ermöglicht, den Benutzer oder zusätzliche Systeme, auf die das LLM zugreifen kann, zu manipulieren.
Die Ergebnisse einer erfolgreichen Prompt-Injection können vielfältig sein – von der Aufforderung sensibler Informationen bis zum Einfluss auf kritische Entscheidungsprozesse unter dem Deckmantel normaler Operationen. In fortgeschrittenen Angriffen könnte das LLM manipuliert werden, um eine schädliche Persona nachzuahmen oder mit Plugins in der Benutzereinstellung zu interagieren. Dies könnte zur Weitergabe sensibler Daten, unbefugter Plugin-Nutzung oder zu Social Engineering führen.
Anfälligkeiten für Prompt-Injections sind möglich aufgrund der Natur von LLMs, die Anweisungen und externe Daten nicht voneinander trennen. Maßnahmen zur Minderung der Auswirkungen von Prompt-Injections umfassen die Durchsetzung von Zugriffskontrollen auf LLMs, das Hinzufügen eines Menschen in die Schleife für erweiterte Funktionen und die Trennung externer Inhalte von Benutzerprompts.
Die Bedrohung durch LLM-Prompt-Injections ist real und kann schwerwiegende Folgen haben. Es ist daher von entscheidender Bedeutung, dass Entwickler und Benutzer von LLMs sich der potenziellen Risiken bewusst sind und proaktive Maßnahmen ergreifen, um ihre Systeme und Daten zu schützen. Insbesondere beim Thema Sicherheit spielt langjährige Erfahrung des Beraters eine entscheidende Rolle.
Bei einer Prompt-Injection manipuliert ein Angreifer die Eingaben an ein Sprachmodell so, dass es seine ursprünglichen Anweisungen ignoriert und stattdessen das tut, was der Angreifer möchte – etwa vertrauliche Informationen preisgeben oder Sicherheitsvorgaben umgehen (Jailbreak).
Bei der direkten Prompt-Injection gibt der Angreifer die manipulierten Anweisungen selbst in den Prompt ein. Bei der indirekten Prompt-Injection versteckt er sie in externen Inhalten – etwa in einer Webseite, einem Dokument oder einer E-Mail –, die das Modell später verarbeitet, ohne dass der Nutzer die Manipulation bemerkt.
Wirksam sind eine klare Trennung von Systeminstruktionen und Nutzerdaten, Eingabevalidierung, die Einschränkung der Rechte des Modells sowie eine permanente Überwachung der Ein- und Ausgaben. Genau ein solches Security-Modul schützt etwa unseren KI-Assistenten DIALOG.pro; mehr unter Datenschutz & KI-Sicherheit.