Grats texnika universiteti (Avstriya) va Helmgolts axborot xavfsizligi markazi (CISPA) tadqiqotchilari guruhi,
Foreshadow hujumi shundan foydalanadiki, xotiraga virtual manzil orqali kirishda istisno (terminal sahifasi xatosi), protsessor spekulyativ ravishda jismoniy manzilni hisoblab chiqadi va agar u L1 keshida mavjud bo'lsa, ma'lumotlarni yuklaydi. Spekulyativ kirish xotira sahifasi jadvalini qidirish tugallanishidan oldin va xotira sahifasi jadvali yozuvi (PTE) holatidan qat'iy nazar amalga oshiriladi, ya'ni. jismoniy xotirada ma'lumotlar mavjudligini va uning o'qilishi mumkinligini tekshirishdan oldin. Xotira mavjudligini tekshirish tugallangandan so'ng, PTE-da Present bayrog'i bo'lmasa, operatsiya o'chiriladi, ammo ma'lumotlar keshda qoladi va yon kanallar orqali kesh tarkibini aniqlash usullari yordamida (kirish vaqtidagi o'zgarishlarni tahlil qilish orqali) olinishi mumkin. keshlangan va keshlanmagan ma'lumotlarga).
Tadqiqotchilar Foreshadowdan himoya qilishning mavjud usullari samarasiz ekanligini va muammoni noto'g'ri talqin qilish bilan amalga oshirilishini ko'rsatdi. Zaiflik
Oldindan yetarli deb hisoblangan yadro xavfsizligi mexanizmlaridan qat'i nazar, "Foreshadow"dan foydalanish mumkin. Natijada, tadqiqotchilar Foreshadow hujumini barcha mavjud Foreshadow himoya rejimlari yoqilgan nisbatan eski yadroli tizimlarga, shuningdek, faqat Spectre-v2 himoyasi o'chirilgan yangi yadrolar bilan amalga oshirish imkoniyatini ko'rsatdilar. Linux yadro opsiyasi nospectre_v2).
Bu aniqlandi
xotiraga kirish vaqtida oldindan yuklash, lekin yadroda foydalanuvchi maydonining spekulyativ yo'qolishi qayd etilganda sodir bo'ladi. Zaiflik sababini noto'g'ri talqin qilish dastlab Foreshadow-da ma'lumotlarning sizib chiqishi faqat L1 keshi orqali sodir bo'lishi mumkin degan taxminga olib keldi, shu bilan birga yadroda ma'lum kod parchalari (oldindan yuklash gadjetlari) mavjudligi L1 keshidan tashqarida ma'lumotlar sizib chiqishiga yordam berishi mumkin, masalan, L3 keshida.
Aniqlangan xususiyat, shuningdek, izolyatsiya qilingan muhitda virtual manzillarni jismoniy manzillarga o'tkazish va CPU registrlarida saqlanadigan manzillar va ma'lumotlarni aniqlash jarayonlariga qaratilgan yangi hujumlarni yaratish imkoniyatini ochib beradi. Namoyish sifatida tadqiqotchilar aniqlangan effektdan Intel Core i10-7U protsessorli tizimda sekundiga taxminan 6500 bit ishlash bilan bir jarayondan ikkinchisiga maʼlumotlarni olish uchun foydalanish imkoniyatini koʻrsatdilar. Intel SGX anklavidan registr tarkibining sizib chiqishi ehtimoli ham ko'rsatilgan (32 bitli registrga yozilgan 64 bitli qiymatni aniqlash uchun 15 daqiqa kerak bo'ldi). Ba'zi turdagi hujumlarni JavaScript va WebAssembly-da amalga oshirish mumkin bo'ldi, masalan, JavaScript o'zgaruvchisining jismoniy manzilini aniqlash va 64-bitli registrlarni tajovuzkor tomonidan boshqariladigan qiymat bilan to'ldirish mumkin edi.
L3 keshi orqali Foreshadow hujumini blokirovka qilish uchun retpoline patch to'plamida amalga oshirilgan Spectre-BTB (Branch Target Buffer) himoya usuli samarali bo'ladi. Shunday qilib, tadqiqotchilar protsessorning spekulyativ ijro mexanizmida ma'lum zaifliklardan himoyalangan yangi protsessorlari bo'lgan tizimlarda ham retpolini yoqilgan qoldirish zarur deb hisoblaydilar. Shu bilan birga, Intel vakillari protsessorlarga Foreshadow-dan qo'shimcha himoya choralarini qo'shishni rejalashtirmaganliklarini va Spectre V2 va L1TF (Foreshadow) hujumlaridan himoyani kiritishni etarli deb bilishlarini aytishdi.
Manba: opennet.ru