Es wurden Informationen über einen neuen Angriff auf Intel-Prozessoren – AEPIC Leak (CVE-2022-21233) – offenbart, der zu einem Leak vertraulicher Daten aus den isolierten Enklaven von Intel SGX (Software Guard eXtensions) führt. Das Problem betrifft die 10., 11. und 12. Generation von Intel-CPUs (einschließlich der neuen Serien Ice Lake und Alder Lake) und wird durch einen architektonischen Mangel verursacht, der den Zugang zu nicht initialisierten Daten, die nach früheren Operationen in den APIC-Register (Advanced Programmable Interrupt Controller) verbleiben, ermöglicht.
Im Gegensatz zu Angriffen der Spectre-Klasse erfolgt das Leak beim AEPIC Leak ohne den Einsatz von Methoden zur Wiederherstellung über Seitenkanäle – die Informationen über vertrauliche Daten werden direkt durch den Zugriff auf den Inhalt der Register, die im Speicherbereich MMIO (memory-mapped I/O) abgebildet sind, übermittelt. Allgemein ermöglicht der Angriff die Identifizierung von Daten, die zwischen den zweiten und letzten Cacheebenen übertragen werden, einschließlich des Inhalts der Register und der Ergebnisse von Leseoperationen aus dem Speicher, die zuvor auf demselben CPU-Kern verarbeitet wurden.
Da für die Durchführung des Angriffs der Zugriff auf die physikalischen Seiten des APIC MMIO erforderlich ist, d.h. Administratorrechte benötigt werden, ist die Methode auf Angriffe auf SGX-Enklaven beschränkt, auf die der Administrator keinen direkten Zugriff hat. Forscher haben ein Tool entwickelt, das es ermöglicht, innerhalb weniger Sekunden die in SGX gespeicherten AES-NI- und RSA-Schlüssel sowie die Intel SGX-Zertifizierungsschlüssel und Parameter des Pseudo-Zufallszahlengenerators zu bestimmen. Der Code zur Durchführung des Angriffs wurde auf GitHub veröffentlicht.
Das Unternehmen Intel hat angekündigt, ein Fix in Form eines Mikrokodupdates vorzubereiten, das die Unterstützung für das Löschen von Puffern implementiert und zusätzliche Maßnahmen zum Schutz der Enklavedaten hinzufügt. Auch ein neuer SDK-Release für Intel SGX wurde vorbereitet, der Änderungen enthält, die Datenlecks verhindern. Entwicklern von Betriebssystemen und Hypervisoren wird empfohlen, anstelle des veralteten xAPIC-Modus den x2APIC-Modus zu verwenden, in dem für den Zugriff auf die APIC-Register anstelle von MMIO die MSR-Register verwendet werden.
Quelle: opennet.ru
