Forscher von mehreren UniversitĂ€ten in den USA und Australien haben zwei Angriffsarten der Rowhammer-Klasse entwickelt â GDDRHammer und GeForge. Diese ermöglichen es, beim AusfĂŒhren eines nicht privilegierten CUDA-Kerns auf NVIDIA-GPUs, bestimmte Bits in GDDR-Grafikspeicherchips zu verzerren. Im Gegensatz zur im vergangenen Jahr vorgestellten Methode GPUHammer sind die neuen Angriffe nicht auf die auf der GPU verarbeiteten Daten beschrĂ€nkt, sondern ermöglichen den vollstĂ€ndigen Zugriff auf den gesamten Hauptspeicher, der zum Adressraum der CPU gehört. Die Forscher haben Exploits demonstriert, die Root-Zugriff auf das Hauptsystem bieten, wĂ€hrend ein nicht privilegierter CUDA-Kern auf der GPU ausgefĂŒhrt wird.
Beide Angriffe fĂŒhren zu vorzeitigem Verlust der Ladung in bestimmten Videopufferspeicherzellen, auf die die Angreifer keinen direkten Zugriff haben, was zu Ănderungen der in diesen Zellen gespeicherten Bits fĂŒhrt. Die Möglichkeit, in den Speicher zu lesen und zu schreiben, der zum Adressraum der CPU gehört, wird durch das Eingreifen in die Funktionsweise des GPU-Speicher-Allocators (cudaMalloc) implementiert, um die Speicherisolierung der GPU zu stören und virtuelle GPU-Adressen auf willkĂŒrliche physische Adressen des GPU- oder CPU-Hauptspeichers abzubilden.
Das Eingreifen erfolgt durch Verzerrung der Bitwerte im Grafikspeicher, in dem sich die Seiten-Tabellen fĂŒr den GPU-Speicher befinden, die fĂŒr die Ăbersetzung virtueller Adressen in physische Adressen verantwortlich sind. Der Unterschied zwischen den Angriffen GDDRHammer und GeForge besteht darin, dass die Methode GDDRHammer die Seiten-Tabelle der letzten Ebene (PT â Last Level Page Table) modifiziert, wĂ€hrend die Methode GeForge das Verzeichnis der letzten Ebene (PD0 â Last Level Page Directory) Ă€ndert.
Unter anderem werden die genannten Adresstranslationstabellen verwendet, um den direkten Zugriff der GPU auf den CPU-Speicher zu organisieren. Daher ermöglicht die Ănderung der Adresse in der GPU-Seiten-Tabelle auf eine physische Adresse im Haupt-RAM sowie das Setzen des APERTURE-Flags, das den Modus fĂŒr das Mapping des CPU-Speichers aktiviert, das Lesen und Schreiben von Daten mit Zugriff auf den Hauptspeicher ĂŒber den PCIe-Bus bei deaktiviertem IOMMU (standardmĂ€Ăig deaktiviert).


Erfolgreiche Angriffe wurden fĂŒr die leistungsstarken professionellen NVIDIA RTX A6000 Grafikkarten auf Basis der Mikroarchitektur Ampere demonstriert (die Preise fĂŒr neue Karten beginnen bei 6850 $, wĂ€hrend gebrauchte bei 4000 $ beginnen) sowie fĂŒr die Verbraucher-Modelle NVIDIA RTX 3060 (250-300 $). Die entwickelte Umgehungstechnik des Rowhammer-Schutzes in Kombination mit der Nutzung der im GPU bereitgestellten Parallelisierungsoperationen ermöglichte eine 64-fache Erhöhung der HĂ€ufigkeit von Zellverzerrungen im Vergleich zu frĂŒheren Angriffen. Als vorĂŒbergehende MaĂnahme zur Blockierung der Angriffe kann durch das Kommando ânvidia-smi -e 1â der ECC (Error Correcting Codes) Fehlerkorrekturmodus aktiviert werden, was jedoch zusĂ€tzliche Overheadkosten verursacht und potenziell umgangen werden kann, indem Angriffsstrategien wie ECCploit und ECC.fail eingesetzt werden.
Der RowHammer-Angriff ermöglicht es, den Inhalt einzelner Bits im DRAM-Speicher durch zyklisches Lesen von Daten aus benachbarten Speicherzellen zu verzerren. Da DRAM-Speicher als zweidimensionales Array von Zellen dargestellt wird, die jeweils aus einem Kondensator und einem Transistor bestehen, fĂŒhrt das kontinuierliche Lesen desselben Speicherbereichs zu Spannungsschwankungen und Anomalien, die zu einem minimalen Verlust der Ladung in benachbarten Zellen fĂŒhren. Ist die LeseintensitĂ€t hoch, kann die benachbarte Zelle eine ausreichend groĂe Menge an Ladung verlieren, sodass der nĂ€chste Regenerationszyklus nicht in der Lage ist, ihren ursprĂŒnglichen Zustand wiederherzustellen, was zu einer Ănderung des Wertes der in der Zelle gespeicherten Daten fĂŒhrt.
Die Rowhammer-Angriffsstrategie wurde 2014 vorgeschlagen, woraufhin zwischen Sicherheitsforschern und Hardwareherstellern ein Katz-und-Maus-Spiel begann â die Speicherhersteller versuchten, die Schwachstelle zu blockieren, wĂ€hrend die Forscher neue Wege fanden, sie zu umgehen. Zum Beispiel haben die Chip-Hersteller zur Abwehr von RowHammer einen TRR (Target Row Refresh) Mechanismus implementiert, der jedoch nur in speziellen FĂ€llen Zellverzerrungen blockiert und nicht vor allen möglichen Angriffsvarianten schĂŒtzt. Angriffsmethoden wurden fĂŒr DDR3, DDR4 und DDR5 Chips in 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 fĂŒr Angriffe ĂŒber das Netzwerk und durch AusfĂŒhrung von JavaScript-Code im Browser vorgeschlagen.
Quelle: opennet.ru
