AMD işlemcilerdeki önbellek kanalı tahmin mekanizmasına iki saldırı

Daha önce saldırı yöntemleri geliştirmesiyle tanınan Graz Teknik Üniversitesi'nden (Avusturya) bir grup araştırmacı MDS, NetSpectre, Çekiç и ZombieLoadAMD işlemcilere özel donanım optimizasyonları üzerine araştırmalar yaptı ve geliştirdi AMD işlemcilerin LXNUMX önbellek kanalı tahmin mekanizmasının çalışması sırasında veri sızıntılarını manipüle eden iki yeni yan kanal saldırısı yöntemi. Teknikler, ASLR korumasının etkinliğini azaltmak, savunmasız AES uygulamalarındaki anahtarları kurtarmak ve Spectre saldırısının etkinliğini artırmak için kullanılabilir.

Hangi önbellek kanalının belirli bir bellek adresini içerdiğini tahmin etmek için kullanılan, CPU'nun birinci düzey veri önbelleğinde (L1D) kanal tahmin mekanizmasının (yol tahmincisi) uygulanmasında sorunlar belirlendi. AMD işlemcilerde kullanılan optimizasyon μ-etiketlerinin (μTag) kontrol edilmesine dayanmaktadır. μTag, sanal adrese belirli bir karma işlevi uygulanarak hesaplanır. İşlem sırasında kanal tahmin motoru, önbellek kanalını tablodan belirlemek için μTag'i kullanır. Böylece μTag, işlemcinin tüm seçenekleri aramadan kendisini yalnızca belirli bir kanala erişimle sınırlamasına olanak tanır ve bu da CPU enerji tüketimini önemli ölçüde azaltır.

AMD işlemcilerdeki önbellek kanalı tahmin mekanizmasına iki saldırı

2011'den 2019'a kadar piyasaya sürülen çeşitli AMD işlemci nesillerindeki kanal tahmin sistemi uygulamasının tersine mühendisliği sırasında, iki yeni yan kanal saldırı tekniği belirlendi:

  • Collide+Probe - saldırganın aynı mantıksal CPU çekirdeğinde çalışan işlemler için bellek erişimini izlemesine olanak tanır. Yöntemin özü, hafıza erişimini takip etmek için μTag hesaplamak için kullanılan hash fonksiyonunda çarpışmalara neden olan sanal adresleri kullanmaktır. Intel işlemcilerde kullanılan Flush+Reload ve Prime+Probe saldırılarından farklı olarak Collide+Probe, paylaşılan belleği kullanmaz ve fiziksel adres bilgisi olmadan çalışır.
  • Yükle+Yeniden Yükle - aynı fiziksel CPU çekirdeğindeki bellek erişim izlerini çok doğru bir şekilde belirlemenize olanak tanır. Yöntem, bir fiziksel bellek hücresinin L1D önbelleğinde yalnızca bir kez bulunabileceği gerçeğine dayanmaktadır. Onlar. aynı bellek hücresine farklı bir sanal adresten erişmek, hücrenin L1D önbelleğinden çıkarılmasına neden olacak ve bellek erişiminin izlenmesine olanak tanıyacaktır. Saldırı, paylaşılan belleğe dayanmasına rağmen, önbellek hatlarını temizlemez ve verileri son düzey önbellekten çıkarmayan gizli saldırılara olanak tanır.

Collide+Probe ve Load+Reload tekniklerine dayanarak araştırmacılar çeşitli yan kanal saldırı senaryoları gösterdiler:

  • Saniyede 588 kB'ye kadar hızlarda veri aktarımına izin veren, iki işlem arasında gizli bir dolaylı iletişim kanalını organize etmek için yöntemlerin kullanılması olasılığı gösterilmiştir.
  • μTag'deki çarpışmaları kullanarak, ASLR'nin (Adres Alanı Düzeni Rastgeleleştirme) farklı varyantları için entropiyi azaltmak ve tamamen güncellenmiş bir Linux sisteminde çekirdekteki ASLR korumasını atlamak mümkün oldu. ASLR entropisini azaltmak için hem kullanıcı uygulamalarından hem de sanal alan ortamında yürütülen JavaScript kodunu ve başka bir konuk ortamında çalışan kodu kullanarak bir saldırı gerçekleştirme olasılığı gösterilmiştir.

    AMD işlemcilerdeki önbellek kanalı tahmin mekanizmasına iki saldırı

  • Collide+Probe yöntemine dayalı olarak, güvenlik açığı olan bir uygulamadan şifreleme anahtarını kurtarmak için bir saldırı uygulandı ( T-masa) AES şifrelemesi.
  • Spectre saldırısı, veri toplama kanalı olarak Collide+Probe yöntemini kullanarak, paylaşılan hafızayı kullanmadan çekirdekten özel verileri çıkarmayı başardı.

Güvenlik açığı, mikro mimarilere dayalı AMD işlemcilerde ortaya çıkıyor
Buldozer, Piledriver, Steamroller, Zen (Ryzen, Epic), Zen+ ve Zen2.
AMD'ye sorun 23 Ağustos 2019'da bildirildi ancak şu ana kadar raporu yayınlamadı güvenlik açığının engellenmesine ilişkin bilgiler içerir. Araştırmacılara göre sorun, Intel'in dal tahmin mekanizmalarının devre dışı bırakılmasını kontrol etmek için yaptığına benzer şekilde, kanal tahmin sistemini seçici olarak devre dışı bırakmak için MSR bitleri sağlanarak mikro kod güncelleme düzeyinde engellenebilir.

AMD işlemcilerdeki önbellek kanalı tahmin mekanizmasına iki saldırı

Kaynak: opennet.ru

Yorum ekle