Ein Gehirn mit dem Schriftzug we-mak.ai

Insecure Output Handling bei LLMs: Schutz

LLM: Unsichere Verarbeitung von Ausgaben des Sprachmodells

Insecure Output Handling bezeichnet das Risiko, Ausgaben eines Sprachmodells ungeprüft an nachgelagerte Systeme weiterzugeben. Werden LLM-Antworten ohne Validierung in Browser, Datenbanken oder Shells übernommen, drohen Angriffe wie Cross-Site-Scripting, SQL-Injection oder Remote Code Execution. Schutz bieten konsequente Ausgabevalidierung, kontextgerechtes Escaping und der Grundsatz, jede Modellausgabe als nicht vertrauenswürdige Eingabe zu behandeln.

Risiken im Umgang mit Ausgaben von Sprachmodellen

In der dynamischen Welt der Technologie, insbesondere in der Entwicklung und Implementierung großer Sprachmodelle (Large Language Models, LLMs), rückt ein zunehmend kritisches Thema in den Brennpunkt: die Sicherheit.

Eine spezifische Herausforderung, die in diesem Kontext immer mehr Aufmerksamkeit erfordert, ist der unsichere Umgang mit Ausgaben (Insecure Output Handling). Diese Herausforderung bezieht sich auf die unzureichende Validierung, Bereinigung und Verarbeitung der von den LLMs generierten Ausgaben, bevor diese an andere Komponenten und Systeme weitergeleitet werden. Da die Inhalte, die von LLMs erzeugt werden, durch Eingabeaufforderungen gesteuert werden können, ähnelt dieses Verhalten dem indirekten Bereitstellen von Zugriff auf zusätzliche Funktionen für die Benutzer.

Unterscheidung zu Überabhängigkeit

Im Gegensatz zur Überabhängigkeit (Overreliance), die sich auf breitere Bedenken bezüglich der Überdependenz von der Genauigkeit und Angemessenheit der LLM-Ausgaben konzentriert, beschäftigt sich der unsichere Umgang mit Ausgaben speziell mit den von LLMs generierten Ausgaben bevor sie weitergeleitet werden. Diese Unterscheidung ist zentral, um die spezifischen Risiken und potenziellen Schwachstellen, die sich aus diesem Bereich ergeben, zu verstehen.

Mögliche Gefahren und Sicherheitsrisiken

Die erfolgreiche Ausnutzung einer Sicherheitslücke aufgrund unsicheren Umgangs mit Ausgaben kann in Webbrowsern zu Cross-Site Scripting (XSS) und Cross-Site Request Forgery (CSRF), sowie auf Backend-Systemen zu Server-Side Request Forgery (SSRF), Rechteerweiterung oder Ausführen von Fremdcode führen. Die folgenden Bedingungen können die Auswirkungen dieser Schwachstelle erhöhen:

Häufige Beispiele für Schwachstellen

Präventionsmaßnahmen

Um die Risiken zu minimieren und die Sicherheit der Systeme zu gewährleisten, sollten Unternehmen und Entwickler folgende Präventionsmaßnahmen ergreifen:

Angriffsszenarien

Zur Veranschaulichung der Risiken und der Notwendigkeit präventiver Maßnahmen werden im Folgenden einige Beispiel-Szenarien für Angriffe aufgeführt:

  1. Eine Anwendung nutzt ein LLM-Plugin, um Antworten für ein Chatbot-Feature zu generieren. Das Plugin bietet auch eine Reihe administrativer Funktionen, die einem anderen privilegierten LLM zugänglich sind. Das general-purpose LLM leitet seine Antwort, ohne eine angemessene Ausgabevalidierung, direkt an das Plugin weiter, was dazu führt, dass das Plugin für Wartungsarbeiten heruntergefahren wird.
  2. Ein Benutzer verwendet ein Website-Zusammenfassungstool, das von einem LLM betrieben wird, um eine prägnante Zusammenfassung eines Artikels zu generieren. Die Website enthält eine Eingabeaufforderung, die das LLM anweist, sensible Inhalte entweder von der Website oder aus der Konversation des Benutzers zu erfassen. Von dort aus kann das LLM die sensiblen Daten kodieren und ohne jegliche Ausgabevalidierung oder Filterung an einen vom Angreifer kontrollierten Server senden.
  3. Ein LLM ermöglicht es Benutzern, SQL-Anfragen für eine Backend-Datenbank über ein chatähnliches Feature zu erstellen. Ein Benutzer fordert eine Anfrage zur Löschung aller Datenbanktabellen an. Wenn die vom LLM formulierte Anfrage nicht gründlich geprüft wird, werden alle Datenbanktabellen gelöscht.
  4. Eine Webanwendung verwendet ein LLM, um Inhalte aus Benutzertextaufforderungen zu generieren, ohne Ausgabebereinigung. Ein Angreifer könnte eine gestaltete Eingabeaufforderung einreichen, die das LLM veranlasst, eine unsanftiervollständige JavaScript-Nutzlast zurückzugeben, was zu XSS führt, wenn es im Browser eines Opfers gerendert wird. Die unzureichende Validierung von Eingabeaufforderungen hat diesen Angriff ermöglicht.

Fazit

Der unsichere Umgang mit Ausgaben von Sprachmodellen birgt erhebliche Risiken für die Sicherheit und Integrität digitaler Systeme. Durch eine Kombination aus bewährten Praktiken, sorgfältiger Planung und der Implementierung robuster Sicherheitsmaßnahmen können Entwickler und Unternehmen jedoch die Risiken mindern und die Vorteile dieser revolutionären Technologie sicher nutzen.

Häufige Fragen

Was bedeutet unsichere Verarbeitung von LLM-Ausgaben (Insecure Output Handling)? +

Davon spricht man, wenn nachgelagerte Systeme die Ausgabe eines Sprachmodells ungeprüft übernehmen und weiterverarbeiten. Wird der Output ohne Validierung etwa in eine Webseite, eine Datenbankabfrage oder Code eingefügt, kann er Schadwirkung entfalten – vergleichbar mit klassischen Injection-Schwachstellen.

Worin unterscheidet sich das von Überabhängigkeit (Overreliance)? +

Bei der Überabhängigkeit vertraut ein Mensch den Modellausgaben zu unkritisch. Bei der unsicheren Ausgabeverarbeitung geht es dagegen um die technische Ebene: Ein System übernimmt die Ausgabe ungeprüft, wodurch etwa Cross-Site-Scripting (XSS) oder Code-Injection möglich werden.

Wie schützt man sich vor unsicherer Ausgabeverarbeitung? +

Indem man die Ausgaben eines Sprachmodells grundsätzlich als nicht vertrauenswürdig behandelt: konsequentes Validieren, Escapen und Filtern, bevor der Output in andere Systeme übernommen wird. Mehr dazu unter Datenschutz & KI-Sicherheit.