Angrebene GDDRHammer og GeForge, der forvrider GPU-hukommelsen for at få adgang til hele CPU-hukommelsen

Forskere fra flere universiteter i USA og Australien har udviklet to Rowhammer-angreb - GDDRHammer og GeForge - der gør det muligt at forvrænge enkeltbit i GDDR-videohukommelseschips ved kørsel af et ikke-privilegeret CUDA-kernel på NVIDIA GPU'er. I modsætning til den metode, der blev præsenteret sidste år, GPUHammer, er de nye angreb ikke begrænset til kun at påvirke de data, der behandles i GPU-hukommelse, men giver fuld adgang til al hovedhukommelse relateret til CPU'ens adresseområde. Forskerne har demonstreret exploits, der giver root-adgang til det primære system ved at køre et ikke-privilegeret CUDA-kernel på GPU'en.

Begge angreb fremprovokerer en for tidlig tab af ladning i specifikke videohukommelsesceller, som angriberen ikke har direkte adgang til, hvilket medfører en ændring af de bits, der er gemt i disse celler. Muligheden for at læse og skrive til hukommelse relateret til CPU'ens adresseområde opnås ved at intervenere i arbejdet med GPU's hukommelsesallokator (cudaMalloc) for at bryde isolationen af GPU-hukommelsen og kortlægge virtuelle adresser fra GPU til vilkårlige fysiske adresser i GPU- eller CPU-hukommelsen.

Interventionen udføres gennem forvrængning af bitværdier i videohukommelsen, hvor der opbevares GPU's side-tabeller, som står for oversættelsen af virtuelle adresser til fysiske. Forskelle mellem angrebene GDDRHammer og GeForge er, at GDDRHammer-metoden modificerer den sidste niveau side-tabel (PT - Last Level Page Table), mens GeForge-metoden ændrer det sidste niveau side-katalog (PD0 - Last Level Page Directory).

Blandt andet bruges de nævnte adresseoversættelsestabeller til at organisere direkte adgang fra GPU til CPU-hukommelse, så ændringen af adressen i GPU's side-tabel til en fysisk adresse i primær RAM og opsætning af flaget APERTURE, som aktiverer CPU-hukommelseskortlægning, giver mulighed for at læse og skrive data med adgang til hovedhukommelsen via PCIe-bussen med IOMMU deaktiveret (som standard deaktiveret).

Angrebene GDDRHammer og GeForge, der forvrider GPU-hukommelsen for at få adgang til hele CPU-hukommelsen
Angrebene GDDRHammer og GeForge, der forvrider GPU-hukommelsen for at få adgang til hele CPU-hukommelsen

Succesful attacks have been demonstrated on high-performance professional NVIDIA RTX A6000 graphics cards based on the Ampere microarchitecture (new cards start at $6850, while used ones are around $4000) and consumer models like the NVIDIA RTX 3060 ($250-300). The developed bypass technique for Rowhammer protection, combined with the use of parallel operation capabilities provided by GPUs, has increased the frequency of cell distortion occurrences by 64 times compared to previous attacks. As a temporary measure to block attacks, the command "nvidia-smi -e 1" can enable ECC (Error Correcting Codes) error correction mode, but this incurs additional overhead and can potentially be bypassed using attack methods such as ECCploit and ECC.fail.

The RowHammer attack allows for the distortion of individual bits in DRAM memory by cyclically reading data from adjacent memory cells. Since DRAM memory comprises a two-dimensional array of cells, each made up of a capacitor and a transistor, continuous reading from the same memory area causes voltage fluctuations and anomalies that lead to minor charge loss in neighboring cells. If the reading intensity is high, the neighboring cell may lose a significant amount of charge, and the subsequent regeneration cycle will not be able to restore its original state, resulting in a change in the value stored in that memory cell.

The Rowhammer attack method was proposed in 2014 and has since led to a game of 'cat and mouse' between security researchers and hardware manufacturers—the memory chip manufacturers tried to block the vulnerability, while researchers found new ways to circumvent it. For example, to protect against RowHammer, chip manufacturers implemented the TRR (Target Row Refresh) mechanism, but it turned out that it only blocks cell distortion in certain cases and does not protect against all possible attack variants. Attack methods have been developed for DDR3, DDR4, and DDR5 chips in systems with Intel, AMD, and ARM processors, as well as for GDDR memory of NVIDIA GPUs. Additionally, methods have been found to bypass ECC error correction, and options for conducting attacks via network and through the execution of JavaScript code in browsers have been proposed.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster