Rowhammer DRAM hatası nedir ve nasıl tedavi etmeliyim?


20

DRAM yongaları çok sıkı bir şekilde paketlenmiştir. Araştırmalar, komşu bitlerin rastgele çevrilebileceğini göstermiştir.

  • ECC'li sunucu sınıfı DRAM yongasında hatanın rastgele tetiklenmesi olasılığı nedir ( CMU-Intel kağıdı , örneğin bir yıl içinde bir hata için bilinmeyen bir yonga için 9.4x10 ^ -14 sayısını gösterir)?
  • Bellek satın almadan önce hatanın düzeltilip düzeltilmediğini nasıl bilebilirim?
  • Örneğin CentOS 7'de kiracılar veya ayrıcalıksız kullanıcılar tarafından ayrıcalık yükseltme işlemini gerçekleştirmek için yapılan kötü niyetli girişimlere karşı koymak için ne yapmalıyım?

Referanslar:


2
İstismarın ayrıntılarının hala ambargo uygulanmadığı göz önüne alındığında, Google'ın size vermiş olduğu bilgiler dışında çok fazla bilgi bulunacağından emin değilim.
fukawi2

Anladığım kadarıyla, bellek yenileme hızı başarılı bir bit çevirme olasılığını önemli ölçüde azaltır ve daha yeni BIOS sürümleri, riski azaltmaya çalışmak için yenileme oranlarını düşürmüştür. Yani BIOS'unuzu güncellemek iyi bir ilk adım olabilir mi?
Reaces

1
@ fukawi2, istismarın hangi ayrıntıları ambargo edildi? Kavram kanıtı istismarlarının tam kodu blog yazısı ile birlikte yayınlandı.
Mark Seaborn

@MarkSeaborn Şimdi hatırlamıyorum bile, bu 3 ay önceydi ve kahvaltıyı zar zor hatırlıyorum.
fukawi2

Yanıtlar:


19

Alıntı yaptığınız CMU-Intel kağıdı (sayfa 5) hata oranının büyük ölçüde DRAM modülünün parça numarasına / üretim tarihine bağlı olduğunu ve 10-1000 faktöre göre değiştiğini gösterir. Ayrıca, son zamanlarda (2014) üretilen yongalarda sorunun çok daha az belirgin olduğuna dair bazı göstergeler de vardır.

Belirttiğiniz '9.4x10 ^ -14' sayısı, "PARA" adı verilen (mevcut bir azaltma mekanizması pTRR'ye (sözde Hedef Satır Yenileme) benzeyen) önerilen bir teorik azaltma mekanizması bağlamında kullanıldı ve çünkü PARA'nın ECC ile hiçbir ilgisi yok.

İkinci bir CMU-Intel makalesi (sayfa 10) farklı ECC algoritmalarının hata azaltma üzerindeki etkilerinden bahsetmektedir (faktör 10 ^ 2 ila 10 ^ 5, muhtemelen daha fazla karmaşık bellek testleri ve "koruma bandı" ile).

ECC, Row Hammer istismarını etkili bir şekilde DOS saldırısına çevirir. 1 bit hataları ECC tarafından düzeltilecek ve düzeltilemez bir 2 bit hatası tespit edilir edilmez sistem durdurulacaktır (SECDED ECC olduğu varsayılarak).

Çözüm, pTRR veya TRR'yi destekleyen donanım satın almaktır. Cisco'dan Row Hammer hakkında güncel blog yayınına bakın . En azından bazı üreticiler, DRAM modüllerinde yerleşik olan bu etki azaltma mekanizmalarından birine sahip gibi görünüyor, ancak teknik özelliklerini derinlemesine gizliyorlar. Sorunuzu cevaplamak için: satıcıya danışın.

Daha hızlı yenileme hızları (64 ms yerine 32 ms) ve agresif Devriye Ovma aralıkları da yardımcı olur, ancak performans etkisi olur. Ama aslında bu parametrelerin ayarlanmasını sağlayan herhangi bir sunucu donanımı bilmiyorum.

Sanırım işletim sistemi tarafında yapabileceğiniz pek bir şey yok, sürekli yüksek işlemci kullanımı ve yüksek önbellek özlemleri ile şüpheli süreçleri sonlandırmak dışında.


4

Durum hala belirsiz görünüyor, bu yüzden sorularınızın doğrudan cevaplanabileceğini düşünmüyorum, ancak kısmi bir cevap olarak nispeten yeni bilgiler. Haberler için rowhammer-tartış e - posta listesini takip edin .

Şu anda halka açık bilgilerle savunmasız RAM satın almaktan kaçınmanın veya mevcut donanımdaki arıza oranlarını kolayca tahmin etmenin mümkün olmadığından emin değilim. Üreticiler, ürünlerinin nasıl etkilendiği hakkında bilgi sahibi olmamışlardır. Yazılım araçları kullanılarak satın alınmış olan belleği test etmek mümkündür, ancak bu araçları önemli sürelerde (saat) çalıştırmanın RAM'i kalıcı olarak bozabileceğini ve çalışan yazılımlarda hatalara neden olabileceğini bilmelisiniz.

"İsimsiz bellek şirketlerinin" Memtest86 aracında bir Rowhammer testi yayınlamaması için Passmark Yazılımı karşılığında rüşvet ödemeye çalıştığı bildiriliyor .

Intel Skylake donanımının, yeni bir talimatın eklenmesi nedeniyle kürek çekiciye daha az değil, daha savunmasız olduğu bildirildi clflushopt. Bu zaten rowhammer.js'de kullanıldı

Daniel Gruss 2015 Aralık (yazarlarından itibariyle azaltma konusunda burada bazı soruları yanıtlar rowhammer.js kağıt ) Bu konuşma :

  1. Bazı ECC RAM, kürek çekiciye karşı ECC olmayan RAM'den daha az savunmasızken, diğer ECC RAM, ECC olmayan RAM'den daha savunmasızdır ( videodaki soru bağlantısı )
  2. Daha fazla yenileme hızına geçmek, tüm donanımları olmasa da çoğu ile kürek çekiciyi önlemek için yeterlidir - ancak tüm BIOS'lar yenileme hızının değiştirilmesine izin vermez ( videodaki soru bağlantısı ).

Bir karşı önlem olarak, devam eden kürekçi saldırılarını tespit etmek mümkün olabilir, ancak bunun yapıldığını bilmiyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.