BadRAM-Angriff zur Umgehung des SEV-SNP-Zertifizierungsmechanismus in AMD-CPUs

Ein Forscherteam der UniversitĂ€t Leuven, der UniversitĂ€t LĂŒbeck und der UniversitĂ€t Birmingham hat eine BadRAM-Angriffsmethode (CVE-2024-21944) entwickelt, die den Authentifizierungsmechanismus umgehen und Umgebungen gefĂ€hrden kann, die mit der SEV-SNP-Erweiterung auf AMD geschĂŒtzt sind Prozessoren. Um einen Angriff durchzufĂŒhren, muss ein Angreifer, von seltenen Ausnahmen abgesehen, physischen Zugriff auf Speichermodule erhalten und außerdem in der Lage sein, Code auf der Ebene des Sicherheitsrings Null (ring0) auf dem Server auszufĂŒhren, auf dem geschĂŒtzte Gastumgebungen laufen.

AMD SEV-Erweiterungen (Secure Encrypted Virtualization) zielen darauf ab, Garantien fĂŒr die IntegritĂ€t des Speichers virtueller Maschinen zu bieten und sie vor Manipulation und Analyse durch einen Hostsystemadministrator zu schĂŒtzen, der Code auf Hypervisor-Ebene ausfĂŒhren kann. Anfangs beschrĂ€nkte sich der AMD SEV-Schutz auf die VerschlĂŒsselung des Gastspeicherinhalts und die Registerisolierung. SpĂ€ter implementierten AMD EPYC-Prozessoren jedoch zusĂ€tzlich die SEV-SNP-Erweiterung (Secure Nested Paging) fĂŒr den sicheren Betrieb verschachtelter Speicherseitentabellen, wodurch die SpeicherintegritĂ€t gewĂ€hrleistet und Änderungen verhindert wurden in den Speicher des Gastsystems von der Hypervisor-Seite.

Der AMD SEV-SNP-Mechanismus wurde entwickelt, um sicherzustellen, dass Geheimdienste oder Mitarbeiter von Rechenzentren und Cloud-Anbietern, die geschĂŒtzte Gastsysteme betreiben, den Betrieb des Gastsystems nicht beeintrĂ€chtigen können. Die vorgeschlagene BadRAM-Angriffsmethode ermöglicht es, die bereitgestellten Garantien zu umgehen, indem die SPD-Metadaten (Serial Presence Detect) in DDR4- oder DDR5-Speichermodulen geĂ€ndert werden. Bei einem erfolgreichen Angriff kann ein Angreifer verschlĂŒsselte Daten im Speicher des Gastsystems ĂŒberschreiben (auf Chiffretextebene, ohne Möglichkeit der EntschlĂŒsselung) und den Nachweismechanismus umgehen, um beispielsweise die EinfĂŒhrung einer HintertĂŒr in eine geschĂŒtzte virtuelle Maschine zu verbergen SEV-SNP-Technologie.

Der Angriff basiert auf der Einstellung fiktiver Parameter des Speichermoduls im SPD und zwingt den Prozessor, auf nicht vorhandene Adressen zuzugreifen, die sich in vorhandenen Speicherbereichen widerspiegeln. Ein Angreifer kann das SPD so anpassen, dass das Speichermodul eine GrĂ¶ĂŸe an den Prozessor zurĂŒckgibt, die ĂŒber die tatsĂ€chlichen Eigenschaften des Moduls hinausgeht. Anschließend kann der Angreifer den fiktiv nicht vorhandenen Speicher auf einen realen Bereich im DRAM abbilden, der in geschĂŒtzten Gastsystemen bereits verschlĂŒsselt genutzt wird. Dadurch entsteht die Situation, dass unterschiedliche Adressen auf denselben physikalischen Speicher verweisen (zwei Bereiche werden einem Bereich im DRAM-Chip zugeordnet), d.h. Über die Adresse eines fiktiv zugeordneten Speicherbereichs können Sie auf realen, bereits genutzten Speicher zugreifen und die Speicherschutzmechanismen in der CPU umgehen.

BadRAM-Angriff zur Umgehung des SEV-SNP-Zertifizierungsmechanismus in AMD-CPUs

Um einen Angriff durchzufĂŒhren, reicht es aus, einen einfachen Programmierer fĂŒr etwa 10 US-Dollar zusammenzubauen, der aus einem Raspberry Pi Pico-Mikrocontroller, einem Anschluss fĂŒr DDR4/DDR5-Module und einem Netzteil besteht. Die zur DurchfĂŒhrung des Angriffs verwendeten Dienstprogramme, das Kernel-Modul und Exploit-Prototypen werden auf GitHub veröffentlicht.

BadRAM-Angriff zur Umgehung des SEV-SNP-Zertifizierungsmechanismus in AMD-CPUs

Bei Chips bestimmter Hersteller, die keine SPD-Überschreibungssperre implementieren, ist ein Softwareangriff ohne physischen Zugriff auf den Server möglich. Beispielsweise lassen sich die Parameter von Corsair RGB-Speichermodulen per Software verĂ€ndern. Im Falle eines rein softwarebasierten Angriffs kann das System beispielsweise durch ein manipuliertes BIOS-Update oder durch Sabotage seitens der Administratoren kompromittiert werden. Server in Cloud-Diensten.

BadRAM-Angriff zur Umgehung des SEV-SNP-Zertifizierungsmechanismus in AMD-CPUs

Zwei Angriffe werden demonstriert, um zu bestĂ€tigen, dass die Methode funktioniert. Der erste Angriff demonstriert die FĂ€higkeit, Chiffretext abzuspielen – bei Verwendung von AMD SEV werden die Daten im Speicher in verschlĂŒsselter Form gespeichert und der Angreifer kann den Inhalt nicht ermitteln, ist aber in der Lage, die verschlĂŒsselten Daten zu lesen und sie dann durch andere verschlĂŒsselte Inhalte zu ersetzen.

Der zweite Angriff demonstrierte die Möglichkeit, den SEV-SNP-BestĂ€tigungsmechanismus zu umgehen, der eine kryptografische BestĂ€tigung der IntegritĂ€t einer virtuellen Maschine liefert, die in einer sicheren Umgebung ausgefĂŒhrt wird. Ein Angreifer kann den Attestierungsbericht einer gĂŒltigen virtuellen Maschine abfangen und ihn dann durch eine kompromittierte virtuelle Maschine ersetzen, um beispielsweise Spuren einer HintertĂŒr zu verbergen.

Das Problem betrifft die 3. und 4. Generation der Prozessoren der AMD EPYC-Serie, die unter den Codenamen Milan, Milan-X, Genoa, Bergamo, Genoa-X und Siena angeboten werden. Um die Schwachstelle zu blockieren, hat AMD bereits ein Firmware-Update fĂŒr SEV veröffentlicht, das die ALIAS_CHECK-PrĂŒfung implementiert, die eine mit dem betreffenden Angriff verbundene Speichermanipulation verhindert.

Die von Intel angebotenen Scalable SGX- und TDX-Technologien sind nicht anfĂ€llig fĂŒr Angriffe, da die notwendigen PrĂŒfungen in ihnen von Anfang an vorhanden sind. Die klassische Intel SGX-Technologie, die 2021 von Intel obsolet gemacht wurde, ist teilweise angreifbar (Ă€hnlich wie beim bisher bekannten MemBuster-Angriff kann ein Angreifer den Zugriff auf verschlĂŒsselten Speicher analysieren, d. h. nur das Lesen des Chiffretextes ist möglich, nicht jedoch das Umschreiben). Es) . CCA-Erweiterungen (Confidential Compute Architecture) wurden nicht auf ARM-Prozessoren getestet.

Es wurde eine weitere SicherheitslĂŒcke im Zusammenhang mit AMD SEV-SNP gemeldet. Die SicherheitslĂŒcke wurde in einer von AMD entwickelten Abspaltung des QEMU-Emulators entdeckt, der fĂŒr die AusfĂŒhrung von 
 konzipiert ist. virtuelle Maschinen Mit SEV-SNP. Das Problem ermöglicht es einem Host-Administrator, durch Manipulation von ACPI-Tabellen Root-Zugriff auf Gastsysteme zu erlangen. Die Schwachstelle entsteht durch eine Kernel-IntegritĂ€tsprĂŒfung, die wĂ€hrend des Starts des Gastsystems durchgefĂŒhrt wird. LinuxDie anfĂ€ngliche RAM-Disk und Kernelparameter werden zwar berĂŒcksichtigt, jedoch nicht die ACPI-Tabellen, die der Hypervisor verwenden kann, um speziell formatierten AML-Code (ACPI Machine Language) fĂŒr die AusfĂŒhrung in der Gastumgebung bereitzustellen. Es wird behauptet, dass das Problem nicht spezifisch fĂŒr QEMU ist und bei jedem Hypervisor oder Emulator auftritt, da der Kernel Linux vertraut allen vom Hypervisor empfangenen ACPI-Daten.

Video ansehen
Video ansehen


Source: opennet.ru
Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz und VPS-VDS-Servern đŸ”„ Kaufen Sie zuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server | ProHoster