Sicherheitsanfälligkeit in AMD SEV, die die Verschlüsselungsschlüssel offenbaren kann

Entwickler des Google Cloud-Teams entdeckten eine Schwachstelle (CVE-2019-9836) in der Implementierung der AMD SEV-Technologie (Secure Encrypted Virtualization), die es ermöglicht, Daten zu kompromittieren, die durch diese Technologie geschützt sind. AMD SEV gewährleistet auf Hardware-Ebene eine transparente Verschlüsselung des Speichers virtueller Maschinen, wobei nur das aktuelle Gastbetriebssystem Zugang zu den entschlüsselten Daten hat und andere virtuelle Maschinen und der Hypervisor beim Zugriff auf diesen Speicher eine verschlüsselte Datenmenge erhalten.

Das entdeckte Problem ermöglicht es, den Inhalt des geschützten PDH-Schlüssels vollständig wiederherzustellen, der auf der Ebene eines separaten geschützten Prozessors PSP (AMD Security Processor) verarbeitet wird, der für das Hauptbetriebssystem nicht zugänglich ist.
Mit dem PDH-Schlüssel kann der Angreifer dann den Sitzungsschlüssel und die geheime Sequenz, die bei der Erstellung der virtuellen Maschine festgelegt wurden, wiederherstellen und Zugang zu den verschlüsselten Daten erhalten.

Die Schwachstelle wird durch Mängel in der Implementierung elliptischer Kurven (ECC) verursacht, die für die Verschlüsselung verwendet werden und die eine Angriff zur Wiederherstellung der Parameter der Kurve ermöglichen. Während der Ausführung des Befehls zum Start einer geschützten virtuellen Maschine kann der Angreifer Kurvenparameter senden, die nicht den Empfehlungen von NIST entsprechen, was zur Verwendung von Werten von Punkten niedriger Ordnung in Multiplikationsoperationen mit den Daten des geheimen Schlüssels führt.

Die Sicherheit des ECDH-Protokolls hängt direkt von der Ordnung ab des generierten Anfangspunkts der Kurve ab, deren diskrete Logarithmierung eine sehr komplexe Aufgabe darstellt. In einem der Schritte der Initialisierung der AMD SEV-Umgebung werden in den Berechnungen mit dem geheimen Schlüssel Parameter verwendet, die vom Benutzer erhalten werden. Im Wesentlichen wird eine Multiplikation zweier Punkte ausgeführt, wobei einer dieser Punkte dem geheimen Schlüssel entspricht. Wenn der zweite Punkt zu Primzahlen niedriger Ordnung gehört, kann der Angreifer die Parameter des ersten Punktes (Bits des Moduls, das in der exponentiellen Operation Modulo verwendet wird) durch Ausprobieren aller möglichen Werte ermitteln. Um den geheimen Schlüssel zu bestimmen, können die ausgewählten Fragmente der Primzahlen dann mit Hilfe der Chinesischen Restklassensatzes zusammengesetzt werden. Chinesischen Restsatzsatz.

Betroffen sind Serverplattformen von AMD EPYC, die Firmware SEV bis einschließlich Version 0.17 Build 11 verwenden. Das Unternehmen AMD hat bereits veröffentlicht ein Firmware-Update veröffentlicht, in dem die Verwendung von Punkten, die nicht mit der NIST-Kurve übereinstimmen, blockiert wird. Gleichzeitig bleiben zuvor generierte Zertifikate für PDH-Schlüssel gültig, was es einem Angreifer ermöglicht, einen Angriff zur Migration virtueller Maschinen aus Umgebungen, die vor der Verwundbarkeit geschützt sind, in Umgebungen, die von dem Problem betroffen sind, durchzuführen. Es wird auch die Möglichkeit eines Angriffs erwähnt, bei dem die Firmware-Version auf eine alte, anfällige Version zurückgesetzt wird, aber diese Möglichkeit ist bisher nicht bestätigt.

Quelle: opennet.ru

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster