Sicherheitsforscher von Google haben Informationen ĂŒber eine SicherheitsanfĂ€lligkeit (CVE-2024-56161) in AMD-Prozessoren veröffentlicht, die den Mikrocode-Loader betrifft und es ermöglicht, den Mechanismus zur ĂberprĂŒfung digitaler Signaturen bei Mikrocode-Updates zu umgehen. Das Laden von modifiziertem Mikrocode kann den AMD SEV (Secure Encrypted Virtualization)-Mechanismus gefĂ€hrden, der in Virtualisierungssystemen verwendet wird, um virtuelle Maschinen vor Eingriffen durch Hypervisor oder Administrator der Hostsysteme zu schĂŒtzen.
Die Schwachstelle entsteht durch die Verwendung einer unsicheren Hash-Funktion im Code, der die digitale Signatur nach dem Laden des Mikrocodes in die CPU ĂŒberprĂŒft. FĂŒr einen Angriff ist es erforderlich, ĂŒber Administratorrechte im lokalen System zu verfĂŒgen (möglich ist die AusfĂŒhrung von Code auf Ring-0-Schutzebene, wobei man sich nicht in einer virtuellen Maschine befindet).
Im Rahmen des Angriffs kann man in das Funktionieren von Gastbetriebssystemen eingreifen, die durch AMD SEV (Secure Encrypted Virtualization) und SEV-SNP (Secure Nested Paging) geschĂŒtzt sind und Garantien fĂŒr die IntegritĂ€t des Speichers bieten. virtuellen Maschinen, die Prozessorregister isolieren und einen sicheren Umgang mit geschachtelten Seiten-Tabellen ermöglichen. Der AMD SEV-Mechanismus wurde entwickelt, um sicherzustellen, dass das Personal von Rechenzentren und Cloud-Anbietern die Inhalte des Speichers von geschĂŒtzten Gastsystemen weder Ă€ndern noch analysieren kann, sowie Berechnungen nicht verfĂ€lschen kann.
Forschern wurde ein Prototyp eines Exploits vorgelegt, der es ermöglicht, beliebigen Mikrocode in die CPU zu laden, der nicht durch eine digitale Signatur verifiziert ist. Um die GefĂ€hrlichkeit der Schwachstelle zu demonstrieren, wurde ein Mikrocode-Update vorgeschlagen, das die Logik der RDRAND-Anweisung Ă€ndert, die als eine der Entropiequellen in Pseudo-Zufallszahlengeneratoren verwendet wird, die bei der SchlĂŒsselgenerierung, der DurchfĂŒhrung kryptographischer Operationen und der Erzeugung von zufĂ€lligen Identifikatoren eingesetzt werden.
Die Ănderung fĂŒhrt dazu, dass der Befehl RDRAND nur die Zahl 4 zurĂŒckgibt, anstatt einer zufĂ€lligen Folge. Um reale Angriffe auf Systeme mit vertraulichen Berechnungen zu verhindern, setzt der geĂ€nderte Mikrocodes das CF-Flag (Carry-Flag) zurĂŒck, d.h. er kennzeichnet den ausgegebenen Wert als fehlerhaft. Weitere Details und Werkzeuge zur Generierung des geĂ€nderten Mikrocodes sollen am 5. MĂ€rz veröffentlicht werden, um den Nutzern Zeit zu geben, das Patch auf ihren Systemen zu installieren. Ein erfolgreicher Angriffsbeispiel wurde bei Server AMD EPYC 7B13 (Milan) und AMD Ryzen 9 7940HS (Phoenix) demonstriert.
Im Bericht von AMD wird angegeben, dass die Schwachstelle bei AMD-Prozessoren der 1-4 Generationen der Zen-Mikroarchitektur auftritt. Das Mikrocode-Update zur Behebung der Schwachstelle wurde am 13. Dezember 2024 fĂŒr die Prozessormodelle der Serien AMD EPYC 7001, 7002 und 7003 (Naples, Rome, Milan und Milan-X) veröffentlicht, sowie am 16. Dezember fĂŒr die Prozessoren der Serie AMD EPYC 9004 (Genoa, Genoa-X und Bergamo/Siena). Zur Behebung der Schwachstelle in Systemen, die SEV-SNP-Zertifizierung verwenden, ist zusĂ€tzlich ein Update der AMD SEV-Firmware erforderlich (dies wird zusammen mit den BIOS-Updates von den Hardwareherstellern bereitgestellt).
Es wird zudem ĂŒber eine weitere SicherheitsanfĂ€lligkeit in AMD-Prozessoren berichtet, die Angriffe ĂŒber seitliche KanĂ€le ermöglicht, um Informationen ĂŒber Berechnungen in virtuellen Maschinen zu extrahieren, die mithilfe des AMD SEV-Mechanismus geschĂŒtzt sind. Das Problem betrifft die 1. bis 4. Generation der AMD EPYC-Prozessoren und steht im Zusammenhang mit der Möglichkeit, Daten aus dem Prozessor-Caching zu extrahieren, die wĂ€hrend der Arbeit von geschĂŒtzten virtuellen Maschinen anfallen. Zur Analyse des Cache-Inhalts könnte die Methode Prime+Probe verwendet werden, die das Caching mit einem Referenzwertsatz fĂŒllt und VerĂ€nderungen durch die Messung der Zugriffszeiten bei wiederholtem FĂŒllen ermittelt. Es wird angemerkt, dass Methoden, die zuvor zum Schutz vor Spectre-Angriffen vorgeschlagen wurden, geeignet sind, um solche Angriffe zu blockieren.
Quelle: opennet.ru
