
Sicherheitsforscher haben gezeigt dass Rowhammers körperliche Verwundbarkeit stellt eine ernsthafte Bedrohung dar für moderne Grafikprozessoren, mit zwei vollständigen Angriffsketten namens GeForce und GDDRHammerIm Gegensatz zu den Vorstudien, bei denen es ihnen lediglich gelang, minimale Bitveränderungen herbeizuführen, um die Inferenz neuronaler Netze zu beeinträchtigen, erreichen diese neuen Angriffsarten eine absolute Kompromittierung auf Systemebene.
Beim Ausführen von Standardcode ohne Administratorrechte auf einer NVIDIA-GPU, Ein Angreifer kann die internen Speicherstrukturen des Geräts manipulieren, um beliebigen Lese- und Schreibzugriff zu erlangen. Die Manipulation erstreckt sich über den gesamten physischen Speicher der Host-CPU. Dadurch kann der Angreifer seine Berechtigungen erweitern und eine Superuser-Konsole auf dem Kernbetriebssystem erlangen.
Umgehung von Minderungsmaßnahmen und Mustern
Der Erfolg dieser Angriffe hängt von beispiellosen Techniken ab. um die in GDDR6-Speicher implementierten TRR-Schutzmechanismen (Target Row Refresh) zu umgehen. Die GeForge-Forschung führt ungleichmäßige Muster ein, die sich über mehrere Aktualisierungsintervalle erstrecken., indem die Intensität und Reihenfolge der Aktivierungen der Speicherzeilen variiert werden, um eine Erkennung durch die Hardware zu vermeiden.
Um die durch Offline-Profiling gewonnenen physikalischen Adresskarten auf dynamische Speicherzuweisungen anzuwenden, Sie entwickelten eine Seitenverankerungstechnik, die nichtlineare Zuordnung ausnutzt. von den physischen Adressen zu den L2-Cache-Sätzen.
Gleichzeitig, Das GDDRHammer-Team entdeckte, dass die Reihen des DRAM-Speichers auf Grafikkarten Sie folgen einer nicht-monotonen geometrischen AnordnungDies ermöglichte es ihnen, hocheffektive doppelseitige Muster zu erstellen, obwohl die physischen Adressen weit voneinander entfernt lagen. Indem sie einzelne Speicherbankaufgaben verschiedenen Streaming-Multiprozessoren zuwiesen und die Ausführung teilweise synchronisierten, konnten sie die Aktivierungsleistung maximieren und gleichzeitig die Sicherheitsabtastung umgehen.
Diese Ansätze führten zu enormen Ergebnissen; Die GeForge-Methode bewirkte 1,171 Bitänderungen bei einer Consumer-RTX 3060 und 202 bei einer professionellen RTX A6000.GDDRHammer erreichte im Durchschnitt 1,032 Änderungen pro Gigabyte, was einer 64-fachen Steigerung gegenüber früheren Versuchen entspricht.
Seitentabellen bearbeiten und Speichermassage
Um diese elektrischen Störungen als Waffe einzusetzen, Angreifer zielen auf die hierarchischen Seitentabellen ab, die von der Speicherverwaltungseinheit der GPU verwaltet werden.Da der Controller diese Strukturen typischerweise in geschützten oder unvorhersehbaren Bereichen zuweist, basieren Exploits auf Memory-Massage-Techniken, um die Platzierung von Seitentabelleneinträgen an physischen Orten zu erzwingen, von denen der Angreifer weiß, dass sie anfällig sind.
Der Angriff GDDRHammer verwendet Shared-Memory-Mappings, um den Allokator zu überfluten.wodurch die Lücke zwischen Seitentabellenbereichen und benutzergesteuertem Speicher verringert wird. GeForge konzentriert sich speziell auf die Beschädigung von Einträgen im Seitenverzeichnis. 0 (PD0).
Durch gezieltes Zuweisen und Freigeben von Fragmenten des Unified Virtual Memory (UNM) lenkt der Angreifer die Erstellung neuer PD0-Strukturen direkt auf eine bestimmte 4-Kilobyte-Unterseite. Sobald diese Position erreicht ist, ändert der Prozess ein Bit im physischen Adresszeiger des Eintrags und leitet ihn so auf eine gefälschte Seitentabelle um, die vollständig vom Schadcode kontrolliert wird.
Privilegienerweiterung über den PCIe-Bus
El Die Kontrolle über die Seitentabelle der Grafikkarte ermöglicht direkt die Kontrolle über den Zentralprozessor des Computers.Die Seitentabelleneinträge von NVIDIA enthalten ein spezifisches Eröffnungsfeld, das festlegt, ob sich die zugehörige physikalische Adresse im lokalen Speicher des Geräts oder im Speicher des Hostsystems befindet. Durch die Änderung dieses Feldes im gefälschten Eintrag, jede Operation späteres Lesen oder Schreiben Die von der GPU erzeugten Daten werden über den PCIe-Bus direkt an den physischen RAM weitergeleitet. des Gastgebers.
Dieser direkte Zugriff auf den Speicher umgeht die Speicherverwaltungseinheit der CPU und den Schreibschutz des Betriebssystems. In seiner praktischen Demonstration, die Forscher Sie nutzten diese Möglichkeit, um den Codeabschnitt der C-Standardbibliothek direkt in den Speicher des Hosts zu überschreiben. Konkret schleusten sie Maschinencode in die Protokollschließfunktion ein, der anschließend von einem legitimen Programm mit erhöhten Berechtigungen ausgeführt wurde, wodurch der Angreifer sofort uneingeschränkten Zugriff auf das System erhielt.
Verbreitung von Hardware und Gegenmaßnahmen
LaUmfangreiche Tests bestätigten, dass diese Sicherheitslücke in der aktuellen Hardware weit verbreitet ist.Die GDDRHammer-Studie untersuchte 25 High-End-Grafikkarten und stellte fest, dass 16 der 17 RTX-A6000-Modelle auf Basis der Ampere-Architektur anfällig für diese Angriffe sind. Obwohl ECC-Speicher (Error-Correcting Code) die Zuverlässigkeit des Angriffs durch die Korrektur von Einzelbitfehlern verringern kann, ist diese Funktion aufgrund der Leistungseinbußen bei vielen Workstation-Karten standardmäßig deaktiviert und fehlt bei Massenmarktmodellen vollständig.
Die wirksamste Sofortverteidigung gegen Host-Kompromittierung ist die Anwendung einer Input-Output Memory Management Unit (IOMMU). Wenn IOMMU aktiviert ist, beschränkt es den direkten GPU-Zugriff auf explizit autorisierte Host-Page-Frames und neutralisiert so die gefälschte Open-Mapping-Meldung. Beide Forschungsteams weisen jedoch darauf hin, dass IOMMU aus Kompatibilitätsgründen häufig standardmäßig auf kommerziellen Linux-Systemen deaktiviert ist, wodurch eine beträchtliche Anzahl von Rechnern für diesen Angriffsvektor anfällig bleibt.
Und wenn Sie daran interessiert sind, mehr darüber zu erfahren, können Sie sich die Details im ansehen folgenden Link