Skip to content

Half-Double

Distance-2 Rowhammer: ardışık A-B-C row'ları verildiğinde, uzaktaki victim C'yi, uzak aggressor A'ya çok sayıda erişip yakın aggressor B'ye birkaç kez dokunarak flip'lersin — coupling, hemen komşunun ötesine ulaşıp TRR'yi atlatır.

Mechanism

Rowhammer coupling mesafenin bir fonksiyonu, illa adjacency'nin değil

Klasik model, disturbance'ın en güçlü olduğu yerin bir aggressor'a hemen bitişik row olduğunu söyler. Half-Double ise etkinin silikondaki non-linear bir gating efekti üzerinden distance-2 row'lara da yayıldığını gösterir. Üç ardışık A, B, C row'unu ele al: A'ya (uzak aggressor) çok büyük sayıda erişim yöneltmek, B'ye (yakın aggressor) yalnızca bir avuç — düzinelerce — erişimle birleştiğinde, iki row ötedeki C'de (victim) flip'lere yol açar.

Cell geometry'leri küçüldükçe Rowhammer'dan sorumlu electrical coupling daha güçlü ve daha uzun menzilli hale gelir; dolayısıyla iki (ve muhtemelen daha fazla) mesafeler önem kazanır. Bu, birçok savunmaya gömülü bir varsayımı kırar.

Bu, Rowhammer ve double-sided hammering'i genelleştirir ve TRR tarzı mitigation'ların (bkz. TRRespass, many-sided) neden yetersiz kaldığının kilit nedenidir.

Walkthrough

1. Bir A-B-C row üçlüsü belirle. Kurtarılan DRAM mapping'i kullanarak aynı bank'te üç ardışık row bul.

rows (same bank):  A (N-2)   B (N-1)   C = victim (N)
                   far       near      target

2. Asimetrik erişim pattern'ini uygula. A'yı yoğun hammer'la; B'ye hafifçe dokun.

loop:
    access(A) x many        # far aggressor, the bulk of activations
    access(B) x ~dozens     # near aggressor, a light tap
    -> disturbance reaches C two rows away

3. C'deki flip'leri oku. distance-2 victim'i bit flip'ler için kontrol et ve her zamanki gibi exploit et (PTE/secret corruption).

TRR suç ortağına dönüşür
The USENIX'22 paper shows how TRR can inadvertently *facilitate* Half-Double:
the mitigative refresh that TRR issues in response to the far aggressor A
can turn its recipient row (the near neighbour B) into a second aggressor.
"The cure becomes the disease" - the refresh can co-conspire with A to flip C.

Yalnızca adjacency'ye dayanan savunmaları yener

"Sadece hemen bitişik komşu risk altında" varsayan mitigation'lar — naive TRR implementasyonları ve bazı refresh heuristic'leri dahil — bypass edilebilir, çünkü victim en çok hammer'lanan row'a bitişik değildir ve TRR'nin kendi refresh'i yakın-aggressor aktivitesini sağlayabilir.

Mitigation

  • Distance-aware TRR / refresh management: distance-2 (ve ötesi) coupling'i hesaba katan yaklaşım.
  • Increased refresh rate leakage window'unu kısaltır.
  • ECC single-bit flip'leri düzeltir (multi-bit ve yan etkiler kalır).

References