Intel & AMD: Neue Sicherheitslücken in Prozessoren - SGX betroffen

Aktuelle CPUs von Intel und AMD haben Schwachstellen, über die fremde Daten ausgelesen werden können.

Eine Analyse von Johannes Hiltscher veröffentlicht am
Neu entdeckte Schwachstellen in Prozessoren ermöglichen es, Crypto-Schlüssel zu klauen.
Neu entdeckte Schwachstellen in Prozessoren ermöglichen es, Crypto-Schlüssel zu klauen. (Bild: Cory Doctorow (Flickr)/CC-BY-SA 2.0)

Update: Intel und AMD haben Anleitungen zum Umgang mit Æpicleak und Squip veröffentlicht.

Inhalt:
  1. Intel & AMD: Neue Sicherheitslücken in Prozessoren - SGX betroffen
  2. Squip: Der CPU-Scheduler verrät Daten

Wer dachte, nach Spectre und Meltdown hätten die CPU-Hersteller ihre Lektionen gelernt, wird eines Besseren belehrt: Auch aktuelle Prozessoren von AMD und Intel enthalten Schwachstellen, die Angreifer nutzen können, um Daten auszuleiten. Gefunden haben sie zwei Forschergruppen um Daniel Gruss von der TU Graz, der bereits im Kontext von Spectre und Meltdown aktiv war.

Die erste Lücke - genauer gesagt ein Designfehler - betrifft Intels CPUs und wurde von ihren Entdeckern Æpicleak getauft ( CVE-2022-21233, Paper (PDF)). Bei der zweiten handelt es sich um einen Seitenkanalangriff, der über Simultanes Multi-Threading (SMT) ausgenutzt werden kann (CVE-2021- 46778, Paper (PDF)). Er betrifft AMDs CPUs mit Zen-2- und Zen-3-Architektur, die ursächliche Schwachstelle findet sich allerdings auch in Apples M1. Hier haben sich die Entdecker den Namen Squip ausgedacht - was der bedeutet, klären wir später.

Die Lücke Æpicleak ist bei weitem die brisantere von beiden. Sie betrifft alle auf Intels Sunny-Cove-Architektur basierenden Prozessoren, also Ice Lake, Alder Lake und Ice Lake SP (Xeon). Mit ihr können Daten aus SGX-Enklaven ausgeleitet werden. Dadurch werden diese als Sicherheitsmechanismus endgültig unbrauchbar.

Der Interrupt-Controller verrät Daten

Stellenmarkt
  1. Product Owner (m/f/d) for Hardware Security Modules
    Elektrobit Automotive GmbH, Erlangen
  2. SAP FICO Berater (m/w/x)
    über duerenhoff GmbH, Raum Frankfurt am Main
Detailsuche

Der Auslöser für Æpicleak dürfte eher Programmierern bekannt sein: Alte Daten werden nicht überschrieben und können so von anderen gelesen werden. Schuldig ist der Interrupt-Controller (APIC), dessen Register in den Adressraum des Prozessors eingeblendet werden. Dadurch können sie gelesen und geschrieben werden wie normaler Speicher, was als Memory Mapped IO (MMIO) bezeichnet wird.

Die Register des APIC sind regelmäßig angeordnet: Jeweils 4 Byte befinden sich an einer 16-Byte-Grenze, dazwischen sind 12 Byte frei. Was passiert, wenn hier gelesen oder geschrieben wird, ist laut Intel undefiniert. Bei den betroffenen Prozessoren kommen beim Lesen Daten zurück, die zuvor zwischen L2- und L3-Cache verschoben wurden. Zugriffe erfolgen hier als Cache-Line mit 64 Byte Größe.

Die Forscher vermuten, dass beim Zugriff auf den APIC die sogenannte Super Queue, eine Warteschlange für den L3-Zugriff, für die Rückgabe der Registerinhalte genutzt wird. Allerdings scheint der APIC nur dort Daten zu schreiben, wo seine Register liegen - an den anderen Stellen bleibt der alte Inhalt erhalten.

Schüttel die Enklave, und es fallen Schlüssel raus

Zum Angriff auf SGX wird das, da ein Angreifer die Enklave zum Auslagern ihrer Speicherseiten zwingen kann - sofern er Administratorrechte hat, was aber, so die Forscher, beim Angriff auf SGX-Enklaven eine übliche Annahme sei. Sie bezeichnen das als "SGX Shaking". Es können sogar Daten ausgelesen werden, die sich aktuell in Prozessorregistern befinden. Möglich wird das, da eine Enklave beispielsweise bei einem Interrupt alle internen Daten im Speicher sichert und die Arbeit einstellt. Sie muss dann explizit wieder aktiviert werden.

Apropos Speicher: Der sollte bei einer SGX-Enklave eigentlich verschlüsselt sein. Die Verschlüsselung erfolgt aber erst, wenn die Daten die CPU verlassen. Innerhalb der Cache-Hierarchie sind sie unverschlüsselt, und da greift Æpicleak sie ab. Eine Hürde mussten die Forscher noch nehmen: Zwar lässt sich das Auslagern einer Speicherseite der Enklave erzwingen - welche das ist, entscheidet aber der Prozessor. Doch der lässt sich mit einer Technik namens "Zero Freezing" so manipulieren, dass er eine bestimmte Speicherseite auslagert.

Hacking & Security: Das umfassende Handbuch. 2. aktualisierte Auflage des IT-Standardwerks (Deutsch) Gebundene Ausgabe

Angreifer muss mit Einschränkungen leben

Ganz unbeschwert ist der Weg eines Angreifers allerdings nicht, Æpicleak hat einige Einschränkungen. So können, wie oben erwähnt, von jeweils 16 Bytes nur 12 ausgelesen werden. Auch können nur Cache-Lines gelesen werden, die an einer 128-Byte-Grenze ausgerichtet sind - die "ungerade" ausgerichteten werden, so vermuten die Forscher, direkt in der Queue überschrieben. Ähnliches gilt für die Inhalte der Register - nicht alle lassen sich ausleiten. Ein wenig Brute Force bleibt erforderlich.

Trotz dieser Einschränkungen konnten die Forscher in Tests den größten Teil von AES-NI- und RSA-Schlüsseln aus einer SGX-Enklave ausleiten. Auch Intels Quoting-Enklave, die zur Identitätsprüfung verwendet wird, ist davor nicht sicher - Angreifer können dann Identitäten fälschen. Zero Freezing funktioniert zudem nur, wenn Hyperthreading aktiviert ist. Allerdings wird der Angriff mit deaktiviertem Hyperthreading lediglich ineffizienter, nicht unmöglich.

Wirksamen Schutz bieten das Abschalten von SGX oder die Einblendung der APIC-Register in den Speicherbereich zu verhindern. Daneben können die Speicherseiten der SGX-Enklave als nicht-cachebar markiert werden, was sie vor dem Angriff versteckt. Mittelfristig hoffen die Forscher auf ein Update des Microcodes für die betroffenen Prozessoren, langfristig auf eine korrekte Implementierung. Auch zwischen VMs funktioniert der Angriff nicht, da hier der Zugriff auf den APIC emuliert wird.

Kommen wir zur zweiten gefundenen Schwachstelle.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Squip: Der CPU-Scheduler verrät Daten 
  1. 1
  2. 2
  3.  


Aktuell auf der Startseite von Golem.de
Neue Grafikkarten
Erste Preise für Nvidias Geforce RTX 4090 aufgetaucht

Der US-Händler Newegg gibt einen Blick auf die Preise der Nvidia-Ada-Grafikkarten. Sie werden teurer als die Geforce RTX 3090 zuvor.

Neue Grafikkarten: Erste Preise für Nvidias Geforce RTX 4090 aufgetaucht
Artikel
  1. Smart Home Eco Systems: Was unterscheidet Alexa von Homekit von Google Home?
    Smart Home Eco Systems
    Was unterscheidet Alexa von Homekit von Google Home?

    Alexa, Homekit, Google Home - ist das nicht eigentlich alles das Gleiche? Nein, es gibt erhebliche Unterschiede bei Sprachsteuerung, Integration und Datenschutz. Ein Vergleich.
    Eine Analyse von Karl-Heinz Müller

  2. Hideo Kojima: Es sollte ein Death-Stranding-Spiel für Google Stadia geben
    Hideo Kojima
    Es sollte ein Death-Stranding-Spiel für Google Stadia geben

    Hideo Kojima arbeitete am Exklusivtitel für Stadia. Das wurde vorzeitig eingestellt, auch weil Google nicht an Einzelspieler-Games glaubte.

  3. Superbase V: Zendures Solarstation mit 6.400 Wh kommt mit hohem Rabatt
    Superbase V
    Zendures Solarstation mit 6.400 Wh kommt mit hohem Rabatt

    Vor dem Verkaufsstart über die eigene Webseite verkauft Zendure seine Superbase V über Kickstarter - mit teilweise fast 50 Prozent Rabatt.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Razer DeathAdder V3 Pro 106,39€ • Alternate (u. a. Kingston FURY Beast RGB 32 GB DDR5-6000 226,89€, be quiet! Silent Base 802 Window 156,89€) • MindFactory (u. a. Kingston A400 240/480 GB 17,50€/32€) • SanDisk microSDXC 400 GB 29,99€ • PCGH-Ratgeber-PC 3000 Radeon Edition 2.500€ [Werbung]
    •  /