Spectre und Meltdown melden sich zurück: Neue Schwachstellen bei AMD und Intel
09.08.2023 16:23 Uhr Mark Mantel
Du musst angemeldet sein, um Bilder zu sehen.
(Bild: c't)
Die Security-Konferenz Black Hat ist für AMD und Intel kein Spaß. Beide Hersteller müssen sich mit zahlreichen Sicherheitslücken befassen – BIOS-Updates kommen.
AMD und Intel stellen für zahlreichen Prozessoren Microcode- und Firmware-Updates bereit, die gegen neu entdeckte Sicherheitslücken helfen sollen. Allen voran betrifft das die Inception getaufte Sicherheitslücke bei Ryzen- und Epyc-CPUs von AMD sowie Downfall im Falle von Intel.
Beide Angriffe stützen sich auf Spectre und Meltdown [1], umgehen aber bisherige Sicherheits-Patches. Sie sind primär für Betreiber von Cloud-Rechenzentren relevant, auf deren Servern unterschiedliche Kunden ihre jeweilige Software parallel laufen lassen. Vergleichbare Angriffe auf Desktop-PCs und Notebooks sind möglich, aber realitätsfern – dort kommt man dank Direktzugang leichter an Daten.
Downfall mit Meltdown-Wurzeln
Downfall (CVE-2023-32543, Medium-Einstufung 6.5) lässt Speicherbereiche überlaufen [2], um Daten fremder Prozesse auszulesen. Damit das funktioniert, müssen die Downfall-Malware und ihr Opferprozess allerdings auf demselben CPU-Kern laufen. Dann funktioniert Downfall aber auch bei aktiven Software Guard Extensions (SGX), die sensible Daten eigentlich besser schützen sollen (Confidential Computing in Trusted Execution Environments/TEE). Viele Cloud-Instanzen sind freilich so zugeschnitten, dass nicht mehrere davon auf denselben CPU-Kernen laufen.Während bisherige Meltdown-Attacken auf die Daten-Caches der CPU-Kerne abzielten, greift Downfall die SIMD-Einheiten an. SIMD steht für "Single Instruction, Multiple Data", denn damit kann die CPU einzelne Anweisungen auf einen kompletten Datenvektor anwenden, der die Aufgaben dann auf allen ihm zugeordneten Spuren (Lanes) zugleich ausführt.
Der Google-Sicherheitsforscher Daniel Moghimi stellte fest, dass der Gather-Befehl Daten aus dem SIMD-Vektorregister mit 5,7 KByte/s leakt. Der Angriffstyp Gather Data Sampling (GDS) greift so etwa kryptografische Schlüssel ab.
Gather Value Injection (GVI) geht noch einen Schritt weiter und kombiniert den Gather-Befehl mit dem Angriffstyp Load Value Injection (LVI) [3]. GVI sucht im Opferprozess einen Gather-Befehl und schiebt ihm einen eigenen Datenwert unter.
Dazu schreibt Moghimi in seinem Downfall-Paper: "Wenn zum Beispiel ein Programm die Gather-Anweisung ausführt und deren Ausgabe verwendet, um in einen anderen zugewiesenen Speicher zu indizieren, kann ein Angreifer das Programm dazu zwingen, auf Daten außerhalb der Grenzen zuzugreifen, indem er während der vorübergehenden Ausführung veraltete Speicherindizes in Gather einfügt, um beliebige Daten außerhalb dieser Zuweisung und aus dem Adressraum des Opfers zu leaken."
Inception mit Spectre-Wurzeln
Für den Angriff Inception sind sämtliche Zen-Prozessoren von AMD inklusive der aktuellen Zen-4-Modelle (Epyc 9004, Ryzen 7000) anfällig. Dieser neue Dreh von Sicherheitsforschern der ETH Zürich zeigt erneut, dass Spectre-artige Angriffe auf AMD-CPUs kompliziert, aber nicht unmöglich sind.Inception (CVE-2023-20569, Medium-Einstufung) kombiniert die Techniken Phantom-Spekulation (Spectre) mit Transient Execution [4]. Dabei tarnt der Angriff beliebige binäre Operationen (sogenannte XOR-Instruktionen) als rekursive Call-Befehle. Er löst falsche Sprungvorhersagen aus und lässt den Return-Stack-Buffer überlaufen. Der Angreifer kann dabei die Ziel-Speicheradresse bestimmen, auf die der Prozessor die Daten schreibt.
Du musst angemeldet sein, um Bilder zu sehen.
Blockdiagramm zum Inception-Angriff.
(Bild: Daniël Trujillo, Johannes Wikner, Kaveh Razavi)
Viele – auch aktuelle – Prozessoren betroffen
Von Downfall sind alle Intel-Prozessor der Generationen Skylake bis Tiger- beziehungsweise Rocket Lake betroffen, einschließlich diverser Server-CPUs wie der Xeon Platinum 8180. Alder Lake, Raptor Lake und die Serverableger Sapphire Rapids sind laut Herstellerliste nicht anfällig [5]. Intel mitigiert die Schwachstelle mit dem lfence-Befehl, sodass die Daten nach einer Gather-Instruktion nicht mehr weitergereicht werden.AMD mitigiert Inception, indem alle falschen Sprungvorhersagen zum gleichen Ursprungszustand in der Ausführungskette geleitet werden. Dieser Rücksprung führt also ebenfalls zu einem falschen Ergebnis, das sich jedoch kontrollieren lässt. Das soll deutlich weniger Leistung kosten, als die CPU-Pipeline bei einer falschen Sprungvorhersage zu leeren (Flush).
Wer auf Nummer sicher gehen möchte, kann die Pipeline trotzdem leeren. AGESA-Updates kommen nur für Zen-3- und Zen-4-Prozessoren [6], weil dort die notwendige Flush-Instruktion fehlt.
Intel listet in seinen Security Advisories vom 8. August einige weitere Sicherheitslücken mit Medium-Einstufungen auf. Das betrifft die Android-App Unite [7], das Tool Intelligent Test System (ITS) [8] und die MAVinci-Software für die Drohne Falcon 8+ [9]. IST und MAVinci stellt Intel ein – Updates kommen keine. Unite erhält einen Sicherheits-Patch.
Zudem schließt Intel einige BIOS-Schwachstellen. Die Updates müssen die Hersteller von Mainboards und PCs wiederum in ihre eigenen produktspezifischen Firmware-Updates einpflegen, signieren und zum Download bereitstellen.
(mma [10])
URL dieses Artikels:
Neue Sicherheitslücken in AMD- und Intel-Prozessoren entdeckt
Die Security-Konferenz Black Hat ist für AMD und Intel kein Spaß. Beide Hersteller müssen sich mit zahlreichen Sicherheitslücken befassen – BIOS-Updates kommen.
www.heise.de