AEPIC Leak, ein Angriff, der Intel SGX-Schlüssel verliert und die 10., 11. und 12. Generation betrifft

Vor kurzem Informationen wurden über veröffentlicht ein neuer Angriff auf Intel-Prozessoren, genannt «AEPIC-Leck» (bereits unter CVE-2022-21233 katalogisiert), dieser neue Angriff führt zum Durchsickern sensibler Daten isolierte Enklaven von Intel-SGX (Software Guard-Erweiterungen).

Anders als die Spectre-Klasse greift ein Leak in AEPIC Leak an erfolgt ohne die Verwendung von Wiederherstellungsmethoden von Drittanbietern, da die Informationen über sensible Daten direkt übertragen werden, indem die Inhalte der Register in der MMIO-Speicherseite (Memory Mapped I/O) wiedergegeben werden.

Insgesamt Der Angriff ermöglicht es, die zwischen den Caches der zweiten und letzten Ebene übertragenen Daten zu ermitteln, einschließlich der Inhalte von Registern und der Ergebnisse von Speicherleseoperationen, die zuvor auf demselben CPU-Kern verarbeitet wurden.

Scannen von E/A-Adressen auf Intel-CPUs basierend auf der Mikroarchitektur Sunny Cove ergab, dass die Aufzeichnungen zugeordnets In-Memory Advanced Programmable Interrupt Local Controller (APIC) sie sind nicht
korrekt initialisiert. Als Ergebnis gibt das architektonische Lesen dieser Register veraltete Daten von der Mikroarchitektur zurück, sodass keine Daten, die zwischen L2 und dem Cache der letzten Ebene übertragen werden, durch diese Register gelesen werden können.

Als Adressraum von I/O ist nur für privilegierte Benutzer zugänglich, ÆPIC-Leck zielt auf Intels TEE, SGX. ÆPIC kann Daten von SGX-Enklaven lecken, die auf demselben physischen Kern laufen. Während ÆPIC Leak in virtualisierten Umgebungen eine immense Bedrohung darstellen würde, verhindern Hypervisoren in der Regel, dass lokale APIC-Protokolle virtuellen Maschinen offengelegt werden, wodurch die Bedrohung in Cloud-basierten Szenarien beseitigt wird.

Ähnlich wie der vorherige transiente Ausführungsangriff auf SGX ist ÆPIC Leak am effektivsten, wenn es parallel zur Enklave auf dem Geschwister-Hyperprozess ausgeführt wird. Das ÆPIC-Leck erfordert jedoch kein Hyperthreading und kann auch Enklavendaten lecken, wenn Hyperthreading nicht verfügbar oder deaktiviert ist.

Wir führen zwei neue Techniken zum Filtern von Daten im Gebrauch, d. h. Enklavenregisterwerten, und Daten im Ruhezustand, d. h. Daten, die im Enklavenspeicher gespeichert sind, ein. Mit Cache Line Freezing stellen wir eine Technik vor, die gezielt Druck auf die Cache-Hierarchie ausübt, ohne veraltete Daten zu überschreiben…
Diese Cache-Zeilen scheinen immer noch durch die Cache-Hierarchie zu wandern, aber sie überschreiben keine veralteten Daten. Dazu protokollieren wir Leaks von Cache-Line-Werten im Safe State Area (SSA).

Die zweite Technik, Enklavenschütteln, nutzt die Fähigkeit des Betriebssystems, Enklavenseiten sicher auszutauschen. Durch das abwechselnde Aus- und Einlagern der Enklavenseiten zwingen die zwischengespeicherten Seiten Daten durch die Cache-Hierarchie, sodass ÆPIC Werte filtern kann, ohne die Enklavenausführung überhaupt fortzusetzen. Wir nutzen ÆPIC Leak in Kombination mit
Cache Line Freezing und Enclave Shaking zum Extrahieren von AES-NI-Schlüsseln und RSA-Schlüsseln aus der Intel IPP-Bibliothek und Intel SGX. Unser Angriff leckt Enklavenspeicher mit 334,8 B/s und einer Trefferquote von 92,2 %.

Da der Angriff erfordert Zugriff auf die physischen Seiten des APIC MMIO, d.h. Administratorrechte sind erforderlich, das Verfahren ist auf Angriffe auf SGX-Enklaven beschränkt, auf die der Administrator keinen direkten Zugriff hat.

Die Forscher haben eine Reihe von Tools entwickelt, die es ermöglichen, in wenigen Sekunden die in SGX gespeicherten AES-NI- und RSA-Schlüssel sowie die Intel SGX-Bestätigungsschlüssel und Parameter des Pseudozufallszahlengenerators zu ermitteln. Der Code des Angriffs wird auf GitHub veröffentlicht.

Intel kündigte an, einen Fix in Form eines Updates vorzubereiten von Mikrocode, der Unterstützung für Pufferspülung hinzufügt und zusätzliche Maßnahmen zum Schutz von Enklavendaten hinzufügt.

Eine neue Version des SDK für Intel SGX wurde ebenfalls mit Änderungen vorbereitet, um Datenlecks zu verhindern. Betriebssystem- und Hypervisor-Entwicklern wird empfohlen, den x2APIC-Modus anstelle des alten xAPIC-Modus zu verwenden, der MSR-Register anstelle von MMIO verwendet, um auf APIC-Register zuzugreifen.

Das Problem betrifft Intel-CPUs der 10., 11. und 12. Generation (einschließlich der neuen Ice-Lake- und Alder-Lake-Serien) und wird durch einen Architekturfehler verursacht, der den Zugriff auf nicht initialisierte Daten ermöglicht, die auf den APIC-Aufzeichnungen (Advanced Programmable Interrupt Controller) auf den CPUs verbleiben frühere Operationen.

schließlich, wenn Sie sind daran interessiert, mehr darüber zu erfahren, Sie können die Details einchecken den folgenden Link.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: AB Internet Networks 2008 SL
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.