Angriff auf Intel-, AMD- und ARM-CPUs : Spectre-basierte Schwachstelle macht es möglich
Wissenschaftler der Vrije Universiteit Amsterdam haben einen neuen Seitenkanalangriff namens SLAM entdeckt. Dieser Angriff könnte dazu verwendet werden, geheime Informationen aus dem Kernspeicher von aktuellen und künftigen Prozessoren von Intel, AMD und Arm auszulesen.
Der Angriff ist ein End-to-End-Exploit für Spectre, der auf einer neuen Funktion in Intel-CPUs namens Linear Address Masking (LAM), sowie seinen analogen Gegenstücken von AMD (Upper Address Ignore oder UAI) und Arm (Top Byte Ignore oder TBI) basiert.
„SLAM nutzt unmaskierte Gadgets aus, damit ein Userland-Prozess (der Betriebssystem-Bereich, in dem Anwendungen und Programme laufen, die vom Benutzer gestartet werden) beliebige ASCII-Kernel-Daten ausspähen kann“, so die VUSec-Forscher. Das bedeutet, dass der Root-Passwort-Hash aus dem Kernel-Speicher in wenigen Minuten abgegriffen werden kann.
LAM wird von Intel gerne als Sicherheitsfunktion angepriesen. Wie die Forscher herausfanden, wird damit die Sicherheit aber sogar deutlich verschlechtert und die Angriffsfläche für Spectre „dramatisch“ vergrößert. So erlaubt die Funktion transiente Ausführungsangriffe, bei denen mittels „spekulativer Ausführung“ vertrauliche Informationen aus dem Cache des Computers gestohlen werden.
„Ein Angriff mit transienter Ausführung nutzt die mikroarchitektonischen Nebeneffekte transienter Befehle aus und ermöglicht es einem böswilligen Angreifer, auf Informationen zuzugreifen, die normalerweise durch architektonische Zugriffskontrollmechanismen verboten wären“, so Intel in seiner Terminologie-Dokumentation.
SLAM ist der erste Angriff mit transienter Ausführung, der auch auf kommende CPUs abzielt. Er verwendet einen verdeckten Kanal, der auf einer speziellen Art der Adressübersetzung basiert. Dadurch können Kriminelle Spectre-Gadgets einsetzen, um Informationen auszuspähen. Diese CPUs sind betroffen:
- vorhandene AMD-CPUs, die für CVE-2020-12965 anfällig sind
- künftige Intel-CPUs, die LAM (sowohl 4- als auch 5-Level-Paging) unterstützen
- künftige AMD-CPUs, die UAI und 5-Level-Paging unterstützen
Wie Arm in einem Advisory Arm erklärt, sind Arm-Systeme bereits vor Spectre v2 und BHB geschützt. Es wird betont, dass es Aufgabe der Software ist, sich vor Spectre v1 zu schützen. Die beschriebenen Techniken vergrößern nur die Angriffsfläche bestehender Schwachstellen wie Spectre v2 oder BHB, indem sie die Anzahl der ausnutzbaren Gadgets erhöhen.
Auch AMD hat Maßnahmen gegen aktuelle Schwächen für Spectre v2 erwähnt, um den SLAM-Angriff anzugehen. Im Gegensatz dazu plant Intel, vor der Einführung neuer Prozessoren, die LAM nutzen, Anleitungen für Software bereitzustellen. Währenddessen haben Entwickler von Linux bereits Lösungen entwickelt, um LAM standardmäßig auszuschalten.
Die Ergebnisse kommen fast zwei Monate, nachdem VUSec „Quarantine“ vorgestellt hat. Das ist eine reine Software-Lösung, um transiente Ausführungsangriffe abzumildern. Sie isoliert verschiedene Bereiche des Computerspeichers, um den Zugriff auf sensible Daten zu trennen. Quarantine teilt den sogenannten „Last Level Cache“ des Computers auf. Dadurch erhalten verschiedene Sicherheitsbereiche jeweils ihren eigenen Teil des Speichers, um zu verhindern, dass sie sich bestimmte Ressourcen teilen können.