Angriffe wie GDDRHammer und GeForge, die den GPU-Speicher manipulieren, um Zugriff auf den gesamten CPU-Speicher zu erhalten.

Forscher von mehreren Universitäten in den USA und Australien haben zwei Angriffe der Rowhammer-Klasse entwickelt — GDDRHammer und GeForge. Diese ermöglichen es, durch die Ausführung eines nicht privilegierten CUDA-Kernels auf NVIDIA-GPUs, einzelne Bits in GDDR-Videospeicherchips zu manipulieren. Im Gegensatz zur im letzten Jahr vorgestellten Methode GPUHammer sind die neuen Angriffe nicht auf die Daten beschränkt, die im GPU-Speicher verarbeitet werden, sondern bieten vollen Zugriff auf den gesamten Hauptspeicher des CPU-Adressraums. Die Forscher haben Exploits demonstriert, die Root-Zugriff auf das Hauptsystem ermöglichen, während ein nicht privilegierter CUDA-Kernel auf der GPU ausgeführt wird.

Beide Angriffe verursachen einen vorzeitigen Ladeverlust in bestimmten Zellen des Videospeichers, auf die die Angreifer keinen direkten Zugriff haben, was zu einer Veränderung der in diesen Zellen gespeicherten Bits führt. Die Möglichkeit, in den Speicher des CPU-Adressraums zu lesen und zu schreiben, wird durch Eingriffe in den Betrieb des GPU-Speicher-Allocators (cudaMalloc) umgesetzt, um die Isolation des GPU-Speichers zu verletzen und virtuelle GPU-Adressen auf beliebige physische Adressen im GPU- oder CPU-Speicher abzubilden.

Die Eingriffe erfolgen durch Verzerrung der Bitwerte im Videospeicher, in dem die Seitentabellen des GPU-RAMs gespeichert sind, die für die Übersetzung von virtuellen Adressen in physische Adressen verantwortlich sind. Die Unterschiede zwischen den GDDRHammer- und GeForge-Angriffen bestehen darin, dass die GDDRHammer-Methode die Tabelle der letzten Ebene (PT — Last Level Page Table) modifiziert, während die GeForge-Methode das Verzeichnis der letzten Ebene (PD0 — Last Level Page Directory) anpasst.

Unter anderem werden die angegebenen Übersetzungstabellen verwendet, um einen direkten Zugriff des GPUs auf den CPU-Speicher zu ermöglichen. Daher bietet die Änderung der Adresse in der GPU-Seitentabelle auf die physische Adresse im Hauptarbeitsspeicher und das Setzen des APERTURE-Flags, das den CPU-Speichermappingsmodus aktiviert, die Möglichkeit, Daten über den PCIe-Bus mit deaktiviertem IOMMU (standardmäßig deaktiviert) zu lesen und zu schreiben.

Angriffe wie GDDRHammer und GeForge, die den GPU-Speicher manipulieren, um Zugriff auf den gesamten CPU-Speicher zu erhalten.
Angriffe wie GDDRHammer und GeForge, die den GPU-Speicher manipulieren, um Zugriff auf den gesamten CPU-Speicher zu erhalten.

Erfolgreiche Angriffe wurden für leistungsstarke professionelle NVIDIA RTX A6000 Grafikkarten auf Basis der Ampere-Mikroarchitektur demonstriert (die Preise neuer Karten beginnen bei 6850 $ und für gebrauchte bei 4000 $) sowie für die Konsumentenmodelle NVIDIA RTX 3060 (250-300 $). Die entwickelte Technik zur Umgehung des Rowhammer-Schutzes in Kombination mit der Nutzung der in der GPU bereitgestellten Mittel zur Parallelisierung von Prozessen hat die Häufigkeit der Zellverzerrung im Vergleich zu früheren Angriffen um das 64-fache erhöht. Als vorübergehende Maßnahme zur Blockierung von Angriffen kann das ECC (Error Correcting Codes) mit dem Befehl „nvidia-smi -e 1“ aktiviert werden, jedoch führt dies zu zusätzlichen Kosten und kann potenziell durch Angriffsmethoden wie ECCploit und ECC.fail umgangen werden.

Der RowHammer-Angriff kann den Inhalt einzelner DRAM-Speicherbits durch wiederholtes Lesen von Daten aus benachbarten Speicherzellen verfälschen. Da DRAM-Speicher ein zweidimensionales Array von Zellen darstellt, die jeweils aus einem Kondensator und einem Transistor bestehen, führt das kontinuierliche Lesen eines bestimmten Speicherbereichs zu Spannungsfluktuationen und Anomalien, die zu einem kleinen Verlust von Ladung in benachbarten Zellen führen. Wenn die Leseintensität hoch ist, kann die benachbarte Zelle genügend Ladung verlieren, und der nächste Regenerationszyklus hat möglicherweise nicht die Möglichkeit, ihren ursprünglichen Zustand wiederherzustellen, was zu einer Änderung der in der Zelle gespeicherten Daten führt.

Die Rowhammer-Angriffsmethode wurde 2014 vorgeschlagen, woraufhin zwischen Sicherheitsforschern und Hardware-Herstellern ein Katz-und-Maus-Spiel begann – die Hersteller von Speicherchips versuchten, die Schwachstelle zu blockieren, während die Forscher neue Wege fanden, sie zu umgehen. Um sich gegen RowHammer zu schützen, haben die Chip-Hersteller einen TRR-Mechanismus (Target Row Refresh) hinzugefügt, jedoch stellte sich heraus, dass er nur in bestimmten Fällen das Verfälschen von Zellen verhindert und nicht vor allen möglichen Angriffsmöglichkeiten schützt. Angriffsmethoden wurden für DDR3-, DDR4- und DDR5-Chips auf Systemen mit Intel-, AMD- und ARM-Prozessoren sowie für GDDR-Speicher von NVIDIA-GPUs entwickelt. Darüber hinaus wurden Wege gefunden, die ECC-Fehlerkorrektur zu umgehen, und es wurden Optionen vorgeschlagen, um Angriffe über das Netzwerk und durch die Ausführung von JavaScript-Code im Browser durchzuführen.

Quelle: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster