Skip to content

GPUHammer

Bir discrete GPU üzerinde ilk peer-reviewed Rowhammer bit flip'leri: NVIDIA'nın belgelenmemiş GDDR6 address mapping'ini timing ile reverse-engineer et, sonra GPU DRAM'inde bit'leri flip etmek için hammer'la — ML weights'inde tek bir flip, model accuracy'sini ~%80'den %0.1'e düşürür.

Mechanism

Rowhammer follows the silicon onto the GPU

Rowhammer yoğun DRAM'in bir özelliğidir ve GPU belleği (GDDR6) de yoğun DRAM'dir. Engeller GPU'ya özgüdür: NVIDIA physical-to-DRAM (bank/row) mapping'ini privileged software'e bile açmaz ve GPU bellek sistemi yüksek dahili paralelliğe ve kendi erişim yoluna sahiptir. GPUHammer ilk engeli, proprietary mapping'i timing side channel'larıyla reverse-engineer ederek (row-buffer hit/miss latency'si) aşar; hangi GPU virtual/physical adreslerinin aynı bank'in komşu row'larına düştüğünü kurtarır.

Mapping bilindiğinde, saldırgan, GDDR6'da bir victim row'u rahatsız edecek kadar hızlı biçimde aggressor row'ları tekrar tekrar activate eden erişim desenleri çalıştırır ve bit'leri flip eder — CPU DRAM'indekiyle aynı charge-leakage etkisi, şimdi GPU'nun içinde.

Bu, Rowhammer'in GPU-bellek karşılığıdır ve row-buffer conflict timing üzerinden yapılan DRAM bank/row addressing reverse-engineering'e bağlıdır.

Walkthrough

1. GDDR6 mapping'ini reverse-engineer et. bank/row addressing fonksiyonlarını kurtarmak için row-buffer conflict'lerinin GPU tarafı timing'ini kullan.

[*] timing row-buffer hits vs misses on RTX A6000 (GA102, 48GB GDDR6)
[*] recovered bank/row mapping functions

2. Same-bank aggressor set'leri inşa et ve hammer'la. GPU belleği allocate et, row-komşusu aggressor'ları türet ve sıkı bir erişim döngüsünde hammer'la.

[*] hammering aggressor rows...
[+] observed 1,171 bit flips across tested banks

3. Flip'i silahlandır. Tek bir flip'in yüksek etkili bir değeri bozması için bir victim allocation'ı (örneğin bir ML modelinin weights'i) hedefle.

Impact on ML inference
target:  NVIDIA RTX A6000, GDDR6, ECC OFF (default on this class)
effect:  a single bit flip in model weights
result:  accuracy ~80% -> ~0.1%

ECC and memory type matter

GPUHammer flip'leri RTX A6000 (GDDR6) üzerinde gösterdi. Test edilen A100 (HBM2e) üzerinde hiç flip gözlenmedi ve HBM3/HBM3e kullanan datacenter parçaları (H100/H200/B200) ECC varsayılan olarak etkin gelir — yani etki SKU ve bellek teknolojisine göre keskin biçimde değişir. NVIDIA'nın önerisi, mümkün olan yerde ECC'yi etkinleştirmektir.

Detection

  • (Mevcut olan yerde) workload altında yükselen GPU ECC error counter'ları.
  • Belirli bank'leri doyuran anomalik GPU bellek erişim desenleri.

Mitigation

  • Kartın desteklediği yerde GPU ECC'yi etkinleştir (single-bit flip'leri düzeltir).
  • Daha yeni GDDR/HBM'de Refresh/TRR-eşdeğeri in-DRAM mitigation'ları.
  • ECC kapalı consumer/pro kartlarda güvenilmeyen GPU workload'larını birlikte barındırmaktan kaçın.

References