Intel
Der Angriff ist nur im Zusammenhang mit Manipulationen an Berechnungen in SGX-Enklaven gefährlich, da für die Ausführung Root-Rechte im System erforderlich sind. Im einfachsten Fall kann ein Angreifer eine Verfälschung der in der Enklave verarbeiteten Informationen erreichen, in komplexeren Szenarien besteht jedoch keine Möglichkeit, die in der Enklave gespeicherten privaten Schlüssel, die zur Verschlüsselung verwendet werden, mithilfe der Algorithmen RSA-CRT und AES-NI wiederherzustellen ausgeschlossen. Die Technik kann auch verwendet werden, um Fehler in anfänglich korrekten Algorithmen zu generieren, um Schwachstellen bei der Arbeit mit dem Speicher zu provozieren, beispielsweise um den Zugriff auf einen Bereich außerhalb der Grenzen des zugewiesenen Puffers zu organisieren.
Prototypcode zur Durchführung eines Angriffs
Der Kern der Methode besteht darin, Bedingungen für das Auftreten unerwarteter Datenverfälschungen während der Berechnungen in SGX zu schaffen, vor denen die Verwendung von Verschlüsselung und Speicherauthentifizierung in der Enklave keinen Schutz bietet. Um Verzerrungen einzuführen, stellte sich heraus, dass es möglich war, Standard-Softwareschnittstellen zur Steuerung von Frequenz und Spannung zu verwenden, die normalerweise verwendet werden, um den Stromverbrauch während der Leerlaufzeit des Systems zu reduzieren und die maximale Leistung bei intensiver Arbeit zu aktivieren. Frequenz- und Spannungseigenschaften erstrecken sich über den gesamten Chip, einschließlich der Auswirkungen der Datenverarbeitung in einer isolierten Enklave.
Durch Ändern der Spannung können Sie Bedingungen schaffen, unter denen die Ladung nicht ausreicht, um eine Speicherzelle in der CPU zu regenerieren, und sich ihr Wert ändert. Wesentlicher Unterschied zum Angriff
Wenn dieser geänderte Wert im Multiplikationsprozess des Verschlüsselungsprozesses verwendet wird, wird die Ausgabe mit falschem Chiffretext abgelehnt. Durch die Möglichkeit, einen Handler in SGX zu kontaktieren, um seine Daten zu verschlüsseln, kann ein Angreifer, der Fehler verursacht, Statistiken über Änderungen im ausgegebenen Chiffretext sammeln und in wenigen Minuten den Wert des in der Enklave gespeicherten Schlüssels wiederherstellen. Der ursprüngliche Eingabetext und der korrekte Ausgabe-Chiffretext sind bekannt, der Schlüssel ändert sich nicht und die Ausgabe eines falschen Chiffretexts zeigt an, dass ein Bit in den entgegengesetzten Wert verzerrt wurde.
Nach der Analyse der Wertepaare korrekter und beschädigter Chiffretexte, die sich bei verschiedenen Fehlern angesammelt haben, mithilfe von Methoden der differenziellen Fehleranalyse (DFA,
Von dem Problem sind verschiedene Modelle von Intel-Prozessoren betroffen, darunter auch Intel-Core-CPUs mit 6
10. Generation sowie die fünfte und sechste Generation von Xeon E3, die erste und zweite Generation von Intel Xeon Scalable, Xeon D,
Xeon W und Xeon E.
Wir möchten Sie daran erinnern, dass die SGX-Technologie (
Source: opennet.ru