Der Sicherheitsforscher Tavis Ormandy bei Google hat kürzlich eine neue Sicherheitslücke in AMDs Zen-2-Architektur publiziert und ihr in Anlehnung an Heartbleed und RETBleed den Namen Zenbleed verpasst. Zen 2 ist AMDs zweite Generation der Mikroarchitektur, die ab 2019 unter den Markennamen Ryzen, Threadripper und Epyc eingeführt wurde.
Meltdown & Spectre revisited
Die jetzt bekannt gewordene Sicherheitslücke macht sich, wie bereits zuvor Meltdown & Spectre, die spekulative Ausführung moderner Prozessoren zunutze. Um die Anfang 2018 bekannt gewordenen eklatanten Sicherheitslücken in den meisten der in letzten rund 20 Jahren verkauften Prozessoren ist es zwar still geworden, aus der Welt sind sie damit aber nicht, wie RETBleed im letzten Jahr deutlich machte. Dabei ging es neben Intel Core CPUs der Generationen 6 bis 8 auch um AMD Zen 1, 1+ und 2.
Was ist »spekulative Ausführung«?
Bei der spekulativen Ausführung handelt es sich um eine Funktion moderner CPUs, die ungenutzte Rechenzyklen parallel dazu verwendet, um mögliche folgende Programmschritte vorherzusagen und zwischenzuspeichern. Bei erfolgreicher Spekulation ergibt sich daraus eine Steigerung der Verarbeitungsgeschwindigkeit.
Cloudanbieter im Visier
Die als CVE-2023-20593 katalogisierte Sicherheitslücke kann durch die unsachgemäße Behandlung der Anweisung vzeroupper
während der spekulativen Ausführung einem Angreifer ermöglichen, sensible Daten wie Passwörter und kryptografische Schlüssel mit einer Geschwindigkeit von 30 KB/Sek. von jedem CPU-Kern abzugreifen. Wie Ormandy schreibt, sei dies »schnell genug, um Schlüssel und Passwörter zu überwachen, während sich Benutzer anmelden«. Dabei sei es nicht von Belang, ob die Verarbeitung in virtuellen Maschinen, Sandboxen, Containern oder sonst wo passiert, weil die Registerdatei von allen auf demselben physischen Kern gemeinsam genutzt wird. Somit sind, wie schon bei Meltdown & Spectre besonders Cloudanbieter im Visier.
Aktualisierter Microcode
Bei Zenbleed erfordert ein Angriff spezialisiertes Wissen und Equipment, aber wie auch schon bei Meltdown & Spectre ist er auch aus der Ferne über einen Browser möglich. Für Heimanwender besteht kaum Gefahr durch diese Lücke, der Aufwand ist schlicht zu hoch. Mittlerweile hat AMD einen aktualisierten Microcode für betroffene Prozessoren veröffentlicht. Wer nicht auf ein BIOS-Update warten möchte, kann unter Linux über die msr-tools (model specific registers) das sogenannte chicken bit DE_CFG[9] setzen, wie Ormandy am Ende seiner Analyse schreibt.
Das gilt derzeit nur für Server-CPUs. Es gibt allerdings zusätzlich einen Fix im Kernel, der mit Linux 6.4.7 ausgeliefert wird.
Bild: AMD