Die Funktion Secure Encrypted Virtualization (SEV) von AMD-Serverprozessoren ist weniger sicher, als der Name nahelegt: Forscher von Google fanden heraus, dass Epyc-Prozessoren bei der Signaturprüfung von Microcode-Updates schlampen.
Anzeige
Weil solche Microcode-Updates tief in CPU-Funktionen eingreifen, ermöglichen sie schwerwiegende Manipulationen. Das Google-Team veröffentlichte einen Proof of Concept (PoC), der den RDRAND-Befehl zerschießt: Statt einer Zufallszahl liefert er stets den Wert 4. Das schwächt kryptografische Algorithmen, die RDRAND nutzen. Und damit lässt sich wiederum auch die eingangs erwähnte RAM-Verschlüsselung SEV aushebeln, die unter anderem dazu dient, parallel auf demselben Server laufende virtuelle Maschinen (VMs) voneinander sicher zu trennen, etwa für Confidential Computing.
Google selbst nutzt AMD SEV (beziehungsweise SEV-SNP) unter anderem bei der Synchronisation von Passkeys zwischen verschiedenen Geräten angemeldeter Google-Nutzer (Google Password Manager, GPM). Die eigentlichen Passkeys werden dabei gar nicht synchronisiert, sondern existieren nur in sicheren Enklaven auf Cloud-Servern.
Um einem Epyc-Prozessor ein manipuliertes Microcode-Update unterzujubeln, muss der Angreifer zwar Administratorrechte haben. Doch Confidential-Computing-Funktionen wie AMD SEV, Intel SGX/TDX oder ARMv9-CCA zielen gerade darauf, auch Administratoren den Zugriff auf geschützte Daten zu verwehren, indem sie Trusted Execution Environments (TEEs) mit kryptografisch nachweisbarem Betriebszustand (Remote Attestation) schaffen.