Skip to content

Single-sided Rowhammer

Tek bir aggressor row'u (ya da victim adjacency'sini kontrol etmeden iki aggressor'ı) hammer'lamak ve yanına hangi victim row denk gelirse onu bozmak için şansa güvenmek.

Mechanism

Note

Rowhammer bit flip'leri, victim'e fiziksel olarak komşu bir row'un çok sayıda activation'ını gerektirir. Single-sided hammering'de saldırgan, tam olarak hangi victim row'un yanlarında olduğunu bilmeden — ya da kontrol etmeden — aggressor row'lara tekrar tekrar erişir; disturbance, bir aggressor'a komşu olan hangi row denk gelirse onun üzerine düşer. Bu, kesin fiziksel row layout'unun bilinmesini gerektirmez, ancak double-sided hammering'den daha az güvenilir ve daha yavaştır, çünkü herhangi bir victim'in yalnızca bir tarafı sürülür ve aggressor/victim adjacency'si büyük ölçüde şansa bırakılır.

İsim, victim'i iki aggressor (row N−1 ve N+1) arasına sıkıştırarak disturbance'ı kabaca iki katına çıkaran ve verimi büyük ölçüde artıran double-sided hammering ile zıtlık oluşturur.

Walkthrough

Google Project Zero'nun orijinal single-sided loop'u (büyük bir blok içinde rastgele seçilen) iki adresi okur ve her iterasyonda bunları flush eder, böylece okumalar cache'e değil DRAM'e gider:

code_loop:
    mov  (%X), %eax       ; read address X
    mov  (%Y), %ebx       ; read address Y
    clflush (%X)          ; force X out of cache
    clflush (%Y)          ; force Y out of cache
    jmp  code_loop

Burada X ve Y, belirli bir victim'i kuşattıklarından emin olunmadan seçilir, yani saldırgan sadece hammer'lar ve ardından herhangi bir flip için bellekte tarama yapar. Birçok makinede bu, makul bir sürede flip üretmek için fazla yavaştır; double-sided hammering'in (aynı bank'taki adjacent-row offset'ini gerektiren) genellikle tercih edilmesinin nedeni budur.

Mitigation

Genel olarak Rowhammer ile aynı: ECC, artırılmış refresh rate ve Target Row Refresh. Single-sided hammering birim zamanda daha az flip ürettiği için, kısmi mitigation'lar bile buna karşı double-sided ya da many-sided pattern'lara kıyasla nispeten daha etkilidir.

References