Sicherheit & Datenschutz

Wie ein geteilter ChatGPT-Link Nutzerkonten durch Sandbox-Escape kapern konnte

Forscher entdeckten eine Kette von Schwachstellen in der HTML-Vorschau und der MathLive-Integration von ChatGPT, die es Angreifern ermöglichte, über öffentliche Freigabelinks Code in den Sitzungen der Opfer auszuführen.

Illustration eines Sandbox-Durchbruchs mit Code, der durch eine gebrochene Barriere sickert
Für diesen Artikel generierte Illustration

Automatisch aus dem englischen Original übersetzt.

Im Oktober 2026 entdeckten Sicherheitsforscher eine kritische Schwachstelle in ChatGPT, die die Übernahme von Konten über einen einfachen Freigabelink ermöglichte. Durch Ausnutzung eines Fehlers bei der Verarbeitung interaktiver Diagramme und HTML-Vorschauen konnten Angreifer bösartigen JavaScript-Code in die authentifizierte Sitzung eines Opfers einschleusen. OpenAI stufte das Problem als P1-Schweregrad ein und stellte am 26. Oktober 2026 eine Korrektur bereit.

Was passiert ist

Die Schwachstelle ermöglichte es einem Angreifer, eine bösartige Konversation zu erstellen und diese über die Standard-Freigabefunktion von ChatGPT zu veröffentlichen. Wenn ein Opfer diesen öffentlichen Link öffnete, wurde die Nutzlast innerhalb seiner angemeldeten Sitzung auf chatgpt.com ausgeführt. Dieser Ausführungskontext gab dem Angreifer vollen Zugriff auf das Konto des Opfers, sodass er private Konversationen auflisten, nicht freigegebene Nachrichteninhalte abrufen und Daten an externe Server exfiltrieren konnte.

Entscheidend war, dass für den Angriff keine Handlung des Opfers erforderlich war, außer dem Klick auf den Link. Es musste keine Anwendung installiert, kein spezifisches Projekt beigetreten oder Entwicklerwerkzeuge geöffnet werden. Bei einigen Varianten des Exploits wurde der bösartige Code automatisch beim Laden der Seite ausgeführt, während andere einen einzelnen Klick auf die Schaltfläche "Preview" (Vorschau) erforderten. Die Forscher bestätigten, dass der injizierte Code direkt die authentifizierten APIs von ChatGPT aufrufen konnte und somit effektiv jede Aktion ausführen konnte, die auch das Opfer hätte ausführen können.

Die Exploit-Kette basierte auf zwei scheinbar harmlosen Funktionen: einem interaktiven Diagramm und der HTML-Vorschau-Funktion. Das Diagramm lud eine Mathe-Bibliothek namens MathLive, die einen Nachrichten-Listener in der Hauptseite installierte. Die HTML-Vorschau, die in einer eingeschränkten Sandbox lief, sendete präparierte Nachrichten an diesen Listener. Da dem Listener ordnungsgemäße Origin-Prüfungen fehlten, akzeptierte er Anweisungen vom nicht vertrauenswürdigen Vorschau-Frame, was zu einer Verletzung der Sandbox-Grenze führte.

Wie es funktioniert

Der Kern des Exploits bestand darin, die Same-Origin-Policy des Browsers unter Verwendung der postMessage-API zu umgehen. Während die HTML-Vorschau auf einer separaten Domain lief, um sie von der Haupt-ChatGPT-Oberfläche zu isolieren, konnte sie dennoch Nachrichten an das Elternfenster senden. MathLive, das zum Rendern mathematischer Ausdrücke verwendet wird, lauschte auf diese Nachrichten, um sein virtuelles Tastaturlayout zu aktualisieren. Es überprüfte jedoch nicht die Quelle der Nachrichten, sodass der Vorschau-Frame beliebige Befehle senden konnte.

Der Angreifer sendete eine Nachricht, die MathLive anwies, sein Tastaturlayout mit benutzerdefiniertem HTML zu aktualisieren. MathLive fügte dieses HTML unter Verwendung von innerHTML in die Hauptseite ein. Obwohl Skript-Tags, die auf diese Weise eingefügt werden, nicht sofort ausgeführt werden, enthielt der Angreifer ein iframe mit einem srcdoc-Attribut. Dies erstellte ein neues Dokument innerhalb der Hauptseite, das den chatgpt.com-Origin erbte. Da dieser neue Frame nicht in einer Sandbox lief, konnte er auf das DOM und die Cookies der Elternseite zugreifen.

Um JavaScript trotz der Content Security Policy (CSP) von ChatGPT auszuführen, nutzte der Angreifer den oEmbed-Endpunkt von YouTube. Die CSP erlaubte Skripte von YouTube, und der oEmbed-Endpunkt unterstützte JSONP-Callbacks. Durch die Erstellung eines spezifischen Callback-Parameters täuschte der Angreifer YouTube dazu, eine JavaScript-Antwort zurückzugeben, die seinen Code ausführte. Dieser letzte Schritt verschaffte ihm willkürliche Codeausführung innerhalb der authentifizierten Sitzung des Opfers.

Wichtige Details

  • Art der Schwachstelle: Cross-Site Scripting (XSS) durch Sandbox-Escape und unsichere postMessage-Verarbeitung.
  • Betroffene Komponente: ChatGPT Web-Frontend, insbesondere die Interaktion zwischen HTML-Vorschau, MathLive und der Hauptseite.
  • Angriffsvektor: Ein öffentlich geteilter ChatGPT-Konversationslink, der ein bösartiges Diagramm und eine HTML-Vorschau enthält.
  • Auswirkung: Vollständige Kontoübernahme, einschließlich Lesen privater Konversationen und Ausführen von API-Aufrufen im Namen des Opfers.
  • Erforderliche Benutzeraktion: In manchen Fällen keine; andernfalls ein einzelner Klick auf die Schaltfläche "Preview" (Vorschau).
  • Lösung: OpenAI behob das Problem am 26. Oktober 2026, indem es Cross-Frame-Nachrichten für MathLive ablehnte und die CSP-Regeln aktualisierte.

Warum es wichtig ist

Dieser Vorfall verdeutlicht die Risiken komplexer Funktionsinteraktionen in modernen Webanwendungen. Einzelne Komponenten wie Sandboxes, CSPs und Nachrichten-Listener mögen isoliert sicher sein, aber ihre Kombination kann unerwartete Schwachstellen erzeugen. Für Entwickler, die KI-Schnittstellen bauen, unterstreicht dies die Bedeutung rigoroser Origin-Prüfungen für postMessage-Listener und die Vermeidung der Einfügung von Roh-HTML aus nicht vertrauenswürdigen Quellen.

Für Nutzer dient es als Erinnerung daran, dass Freigabelinks von KI-Plattformen aktive Bedrohungen enthalten können. Im Gegensatz zu traditionellen Phishing-Angriffen, die auf Täuschung beruhen, nutzte dieser Exploit legitime Plattformfunktionen zur Verbreitung von Malware. Organisationen sollten erwägen, den Zugriff auf öffentliche Freigaben einzuschränken oder zusätzliche Verifikationsschritte für externe Inhalte zu implementieren, bis solche Schwachstellen vollständig entschärft sind.

Was Sie tun können

  • Überprüfen Sie den Absender, bevor Sie geteilte ChatGPT-Links öffnen, insbesondere von unbekannten Quellen.
  • Überwachen Sie Ihre Kontoaktivitäten auf ungewöhnliche API-Aufrufe oder Logs zum Zugriff auf Konversationen.
  • Stellen Sie als Entwickler sicher, dass alle postMessage-Listener event.origin und event.source validieren.
  • Vermeiden Sie die Verwendung von innerHTML, um Inhalte aus nicht vertrauenswürdigen Frames einzufügen; verwenden Sie stattdessen Textinhalte oder bereinigtes HTML.
  • Implementieren Sie strenge CSP-Richtlinien, die Inline-Skripte verbieten und vertrauenswürdige Domains nur auf wesentliche Dienste beschränken.
  • Halten Sie Ihren Browser und Ihre Sicherheitserweiterungen aktuell, um von den neuesten Schutzmaßnahmen zu profitieren.
  • #security
  • #chatgpt
  • #web-vulnerabilities
  • #xss
  • #openai

Tools aus dem Bytechap-Shop

Weiterlesen

Alle Artikel