yeni bir saldırı sınıfıyla ilgili bilgiler (Yük Değeri Enjeksiyonu, ) Intel CPU'larındaki spekülatif yürütme mekanizmasına yönelik olup, Intel SGX güvenli alanlarından ve diğer süreçlerden anahtarların ve gizli verilerin sızdırılmasına neden olmak için kullanılabilir.
Yeni saldırı sınıfı, tıpkı (Mikroimitasyon Verisi Örnekleme), . Bu arada, yeni saldırılar Meltdown, Spectre, MDS ve benzeri saldırılara karşı mevcut koruma yöntemleriyle engellenemiyor. LVI'ye karşı etkili bir koruma sağlamak için CPU'da donanımsal değişiklikler gereklidir. Yazılım yoluyla koruma sağlandığında, bellekten yükleme işlemi sonrasında LFENCE talimatının eklenmesi ve RET talimatının POP, LFENCE ve JMP ile değiştirilmesi nedeniyle çok büyük yük genellikle oluşmaktadır - araştırmacıların tahminlerine göre, tam yazılı koruma performans düşüşüne 2-19 kat neden olacaktır.
Kısmen, sorunun engellenmesinin zorluğu şu anda bu saldırının daha çok teorik bir niteliğe sahip olmasıyla dengelenmektedir (saldırı teorik olarak mümkündür, ancak uygulanması çok zordur ve yalnızca sentetik testlerde yeniden üretilebilir).
Intel Şirketi orta düzeyde bir tehlike (10 üzerinden 5.6) atamıştır ve SGX ortamı için bir yazılım güncellemesi ve SDK sunmuş ve saldırıyı dolaylı olarak engellemeye çalışmıştır. Önerilen saldırı yöntemleri şu an yalnızca Intel işlemcilerine uygulanabiliyor, ancak LVI'nin Meltdown sınıfı saldırıları için diğer işlemcilere uyarlanması ihtimali dışlanmamaktadır.
Sorun, geçen yılın Nisan ayında Leuven Üniversitesi'nden araştırmacı Jo Van Bulck tarafından tespit edilmiştir ve ardından 9 farklı üniversiteden araştırmacılarla birlikte beş temel saldırı yöntemi geliştirilmiştir; her biri daha spesifik . Bu yılın Şubat ayında, Bitdefender şirketinden araştırmacılar da LVI saldırı varyantlarından birini keşfetmiş ve bunu Intel'e bildirmiştir. Saldırı varyantları, SB (Store Buffer), LFB (Line Fill Buffer), FPU bağlam geçişi tamponu ve birinci seviye önbellek (L1D) gibi farklı mikro mimari yapıların kullanımında ayrışmaktadır ki bunlar daha önce , , , , və .
Əsas LVI ilə MDS arasındakı fərq, MDS-nin xəta (fault) və ya yükləmə (load) və saxlama (store) əməliyyatlarının spekulyativ işlənməsi sonrası təchiz olunan mikroarxitektur strukturların məzmununu manipulyasiya etməsidir, halbuki
LVI hücumları, hədəf CPU-nun üzərində müəyyən bir kodun icrası zamanı digər proseslərdəki gizli məlumat strukturlarının məzmununun çıxarılmasına təsir etmək üçün hücumçunun məlumatlarını mikroarxitektur strukturlarına yerləşdirmək imkanı verir. Bu cür manipulyasiyalar sayəsində hücumçu, təchiz edilmiş məlumatlarla işləyə bilər.
an npm wrapper. proses-hədəfin kodunda xüsusi kod sıraları (gadgetlər), burada hücumçunun idarə etdiyi dəyər yüklənir və bu dəyərin yüklənməsi nəticə yaratan xəta (fault, abort və ya assist) vəziyyətlərinə gətirib çıxarır, bu da nəticəni ləğv edir və əmri yenidən icra edir. İstisna baş verdikdə, spekulyativ bir pencərə yaranır ki, bu müddət ərzində gadgetdə işlənmiş məlumatların sızması baş verir. Xüsusilə, prosessor spekulyativ rejimdə bir kod parçasını (gadget) icra edir, daha sonra proqnozun doğrulmadığını təyin edir və əməliyyatları ilkin vəziyyətinə qaytarır, lakin spekulyativ icra prosesində işlənilmiş məlumatlar L1D kəşfiyyatı və mikroarxitektur tamponlarda öz yerini alır və tanınmış qalan məlumatların çıxarılması metodları ilə əlçatandır.
Assist istisnası, 'fault'-dan fərqli olaraq, proqram təminatı emalçılarının çağrısını tələb etmədən, prosessor daxilində işlənir. Assist, məsələn, yaddaş səhifələri cədvəlində A (Accessed) və ya D (Dirty) bitini yeniləmək lazım olduqda yarana bilər. Digər proseslərə hücum keçirmək çətinliyi, hədəf prosesi manipulyasiya edərək assist-in yaranmasını stimullaşdırmaqdır. Hazırda bunun üçün etibarlı yollar mövcud deyil, lakin gələcəkdə bunun tapılması istisna edilmir. Hücum imkanları hələlik yalnız Intel SGX enklevlərində təsdiqlənib, digər ssenarilər ya nəzəri ya da sintetik şəraitdə (xüsusi gadgetlər koduna daxil edilməsi tələb olunur) icra oluna bilir.
Mümkün hücum vektorları:
- Kernel daxilində müştəri səviyyəsində prosesə məlumat sızması. Linux kernelində Spectre 1 tipli hücumlardan qoruma təmin edən mexanizmlər olan SMAP (Supervisor Mode Access Prevention) LVI hücumlarının həyata keçirilmə ehtimalını əhəmiyyətli dərəcədə azaldır. Gələcəkdə LVI hücumlarına daha sadə üsulların aşkar edilməsi halında əlavə qoruma tədbirlərinin görülməsi lazım ola bilər.
- Müxtəlif proseslər arasında məlumat sızması. Hücum üçün tətbiqdə müəyyən kod parçalarının mövcudluğu və hədəf prosesdə istisna meydana gətirmə mexanizminin müəyyən edilməsi tələb olunur.
- Evdar mühitdən qonaq sistemə məlumat sızması. Bu hücum, müxtəlif çətinliklərlə icra edilməsi tələb olunan, sistemin fəaliyyətini proqnozlaşdırmağı tələb edən, çox çətin kateqoriyaya aiddir.
- Müxtəlif qonaq sistemlərindəki proseslər arasında məlumat sızması. Hücum vektoru fərqli proseslər arasında məlumat sızması təşkil etməyə yaxındır, lakin qonaq sistemlər arasında izolyasiyanı aşmaq üçün əlavə çətin manipulyasiyalar tələb edir.
Araşdırmaçıların dərc etdiyi hücumların həyata keçirilməsi prinsiplərini nümayiş etdirir, lakin hələ də real hücumlar üçün istifadə oluna bilmir. İlk nümunə, qurban prosesində spekulyativ kod icrasını yönləndirməyə imkan tanıyır, bu isə Return-Oriented Programming (, Return-Oriented Programming) ilə analojidir. Bu nümunədə qurban kimi zəruri gadgetləri ehtiva edən xüsusi olaraq hazırlanmış bir proses iştirak edir (real xarici proseslərə hücum etməyi çətinləşdirir). İkinci nümunə, Intel SGX içərisində AES şifrələməsi zamanı hesablamalara müdaxilə etməyə və şifrələmə üçün istifadə olunan açar dəyərini bərpa etmək məqsədilə spekulyativ icra zamanı məlumat sızmasını təşkil etməyə imkan verir.

Mənbə: opennet.ru
