Forscher haben aufgedeckt, dass Large Language Models (LLMs) ANSI-Escape-Codes erzeugen und manipulieren können, was zu neuen Sicherheitslücken in terminalbasierten Anwendungen führen kann.
ANSI-Escape-Sequenzen sind ein standardisierter Satz von Steuerzeichen, die von Terminalemulatoren verwendet werden, um das Aussehen und Verhalten von Textanzeigen zu verändern.
Sie ermöglichen Funktionen wie die Änderung der Textfarbe, die Bewegung des Cursors, blinkenden Text und vieles mehr. Terminalemulatoren interpretieren diese Sequenzen, um dynamische Funktionen bereitzustellen, aber sie waren in der Vergangenheit auch eine Quelle für Sicherheitslücken.
Diese Entdeckung, die zunächst von Leon Derczynski gemeldet und von Sicherheitsforschern weiter untersucht wurde, wirft erhebliche Bedenken hinsichtlich der Sicherheit von LLM-integrierten Befehlszeilen-Tools auf.
Nutzung der 2024 MITRE ATT&CK-Ergebnisse für KMU- und MSP-Cybersicherheitsverantwortliche - Teilnahme am kostenlosen Webinar
ANSI-Escape-Codes, d. h. spezielle Zeichensequenzen, die zur Steuerung des Terminalverhaltens verwendet werden, können von LLMs auf verschiedene Weise ausgenutzt werden:
- Erzeugen von blinkendem Text und Farbwechsel
- Manipulation der Cursorposition und des Bildschirminhalts
- Versteckten Text in Antworten erstellen
- Kopieren von Text in Zwischenablagen ohne Zustimmung des Benutzers
- Ausführen von Denial-of-Service-Angriffen
- Erstellung potenziell bösartiger anklickbarer Hyperlinks
- Auslösen von DNS-Anfragen auf macOS-Systemen
Um diese Schwachstellen zu testen, hat ein Forscher eine Python-basierte Anwendung entwickelt, dillma.pydie mit dem LLM integriert wird.
In einer Demonstration wurde eine bösartige Datei in die App eingespeist, die dann ANSI-Codes verwendete, um blinkenden, farbigen Text und akustische Signale auf dem Terminal zu erzeugen.
Ein weiterer Test zeigte, wie LLM-generierte Ausgaben anklickbare Links hinzufügen können, die möglicherweise Benutzerdaten preisgeben, insbesondere in Umgebungen wie dem Terminal von Visual Studio Code, das das Rendern von Hyperlinks unterstützt.
Sicherheitsexperten haben gezeigt, dass diese Schwachstellen durch zwei primäre Methoden ausgenutzt werden können: direkte Aufforderung von LLMs, Steuerzeichen zu erzeugen, und Verwendung von Code-Interpreter-Tools.
Die Auswirkungen sind besonders gravierend für LLM-gestützte CLI-Anwendungen, die ihre Ausgaben nicht ordnungsgemäß bereinigen.
“It’s important for developers and application designers to consider the context in which they insert LLM output, as the output is untrusted and could contain arbitrary data,” notes the research.
Diese Entdeckung schließt an frühere Erkenntnisse über Unicode-Tags an, die eine versteckte Kommunikation in Webanwendungen ermöglichen, und deutet auf ein Muster von Legacy-Funktionen hin, die unerwartete Angriffsflächen in KI-Anwendungen schaffen.
Um diese Sicherheitsbedenken auszuräumen, empfehlen die Forscher die Umsetzung verschiedener Schutzmaßnahmen:
- Kodierung von ANSI-Steuerzeichen als Standard
- Hinzufügen spezifischer Optionen zur Aktivierung von Steuerzeichen, falls erforderlich
- Implementierung der Erlaubnisliste für genehmigte Zeichen
- Durchführung gründlicher End-to-End-Tests von Anwendungen
Diese Entdeckung erinnert daran, dass Sicherheitsexperten bei der Weiterentwicklung von KI-Technologien wachsam gegenüber potenziellen Schwachstellen bleiben müssen, insbesondere bei der Integration von LLMs in bestehende Systeme und Protokolle.
Die Forschungsgemeinschaft geht davon aus, dass weitere versteckte Schwachstellen entdeckt werden, wenn die Untersuchung der LLM-Sicherheit fortgesetzt wird, was den anhaltenden Bedarf an robusten Sicherheitsmaßnahmen für KI-gestützte Anwendungen unterstreicht.