Forscher entdecken neue GPU-Seitenkanal-Schwachstelle
Ein neuer Angriff namens GPU.zip hat weitreichende Auswirkungen auf die Sicherheit moderner Grafikprozessoren (GPUs). Er setzt auf einen Seitenkanalmechanismus, der es Cyberkriminellen ermöglicht, vertrauliche Informationen aus den GPUs zu extrahieren, was potenziell zu erheblichen Informationslecks führen kann.
„Dieser Kanal nutzt die grafische Datenkompression. Diese Optimierungsfunktion ist datenabhängig und softwaretransparent – und in fast allen modernen Grafikprozessoren vorhanden“, so eine Gruppe von Wissenschaftlern der University of Texas in Austin, der Carnegie Mellon University, der University of Washington und der University of Illinois Urbana-Champaign. Die Komprimierung von Grafikdaten ist eine Funktion integrierter Grafikprozessoren (iGPUs), die es ermöglicht, Speicherbandbreite zu sparen und die Leistung beim Rendern von Bildern zu verbessern. Visuelle Daten werden verlustfrei komprimiert, auch wenn das von der Software nicht angefordert wird.
Die Studie ergab, dass die Komprimierung datenabhängigen DRAM-Verkehr und Cache-Belegung verursacht. Dies kann über einen Seitenkanal gemessen werden.
„Ein Angreifer kann den iGPU-basierten Komprimierungskanal ausnutzen, um mit SVG-Filtern Pixelklau-Angriffe verschiedenen Ursprungs im Browser durchzuführen, und das obwohl SVG-Filter als konstante Zeit implementiert sind“, so die Forscher. „Der Grund dafür ist, dass der Angreifer hochgradig redundante oder hochgradig nicht redundante Muster erzeugen kann – in Abhängigkeit von einem einzigen geheimen Pixel im Browser! Da diese Muster von der iGPU verarbeitet werden, führen ihre unterschiedlichen Redundanzgrade dazu, dass die verlustfreie Komprimierungsausgabe vom geheimen Pixel abhängt.“
Eine erfolgreiche Ausnutzung könnte es einer bösartigen Webseite ermöglichen, die Werte einzelner Pixel von einer anderen Webseite abzuleiten, die in ein iframe-Element in der neuesten Version von Google Chrome eingebettet ist. So werden Sicherheitsgrenzen wie die Same-Origin-Policy (SOP) effektiv umgangen.
Chrome und Microsoft Edge sind besonders anfällig für den Angriff, da sie das Laden von iframes aus unterschiedlichen Quellen mit Cookies zulassen, das Rendern von SVG-Filtern auf iframes erlauben und Rendering-Aufgaben an die GPU delegieren. Mozilla Firefox und Apple Safari sind jedoch nicht betroffen.
Der GPU-Leckkanal für die grafische Datenkomprimierung kann also genutzt werden, um Pixel aus einem ursprungsübergreifenden iframe zu stehlen, indem „entweder die Rendering-Zeitdifferenz aufgrund von Speicherbuskonkurrenz gemessen, oder die LLC-Walk-Time-Metrik verwendet wird, um die GPU-induzierten CPU-Cache-Zustandsänderungen abzuleiten.“
Ein von den Forschern entwickelter Proof-of-Concept (PoC) zeigte, dass es für einen Bedrohungsakteur möglich ist, ein potenzielles Ziel zum Besuch einer betrügerischen Website zu verleiten und Informationen über den Wikipedia-Benutzernamen eines eingeloggten Benutzers zu erfahren.
Dies wiederum ist darauf zurückzuführen, dass einige Web-Standards es ermöglichen, dass die Framing-Seite visuelle Effekte (also SVG-Filter) auf die iframed-Seite anwendet. Dadurch wird der Mechanismus für Seitenkanalangriffe anfällig, indem zum Beispiel die Zeitunterschiede zwischen der Darstellung schwarzer und weißer Pixel berechnet und dann anhand der Timing-Informationen zwischen ihnen unterschieden wird.
Betroffen sind unter anderem die GPUs von AMD, Apple, Arm, Intel, Nvidia und Qualcomm. Allerdings sind Websites, welche die Einbettung durch herkunftsübergreifende Websites bereits über X-Frame-Options und Content Security Policy (CSP)-Regeln verweigern, nicht für den Pixelklau-Angriff anfällig. Die Ergebnisse basieren auf Untersuchungen eines verwandten Seitenkanalangriffs namens Hot Pixels, der einen ähnlichen Ansatz nutzt, um „browserbasierte Pixel-Stealing- und History-Sniffing-Angriffe“ gegen die Webbrowser Chrome und Safari durchzuführen.