Intel protsessorlarida zaifliklarning yangi sinfi joriy etildi

Intel e'lon qilindi yangi haqida ma'lumot zaiflik klassi ularning protsessorlarida - MDS (Mikroarxitektura ma'lumotlarini tanlash). Oldingi Spectre hujumlari singari, yangi muammolar operatsion tizim, virtual mashinalar va boshqa jarayonlardan shaxsiy ma'lumotlarning sizib chiqishiga olib kelishi mumkin. Ta’kidlanishicha, muammolar birinchi bo‘lib Intel xodimlari va hamkorlari tomonidan ichki audit davomida aniqlangan, shundan so‘ng mustaqil tadqiqotchilar Intel’ga shu kabi muammolar haqida ma’lumot berishgan. Muammo AMD va ARM protsessorlariga ta'sir qilmaydi.

Grats texnika universiteti (Avstriya) tadqiqotchilari tomonidan aniqlangan muammolar asosida rivojlangan Ba'zi amaliy yon kanal hujumlari:

  • ZombieLoad (PDF) - boshqa jarayonlardan, operatsion tizimdan, virtual mashinalardan va himoyalangan anklavlardan (TEE, Trusted Execution Environment) maxfiy ma'lumotlarni olish imkonini beradi. Masalan, boshqa virtual mashinada ishlaydigan Tor brauzerida sahifalarni ochish tarixini aniqlash, shuningdek, ilovalarda foydalaniladigan kirish kalitlari va parollarni aniqlash imkoniyati namoyish etildi;


  • RIDL (PDF) - to'ldirish buferlari, saqlash buferlari va yuk portlari kabi Intel protsessorlaridagi turli xil ajratilgan joylar o'rtasida ma'lumotlarning oqib chiqishiga imkon beradi. Boshqa jarayonlar, operatsion tizim, virtual mashinalar va himoyalangan anklavlardan oqishni tashkil qilish uchun hujumlar misollari ko'rsatilgan. Masalan, vaqti-vaqti bilan autentifikatsiya qilish urinishlari paytida /etc/shadow dan ildiz paroli xeshining mazmunini qanday topish mumkinligini ko'rsatadi (hujum 24 soat davom etdi);

    Bundan tashqari, JavaScript va WebAssembly-dan foydalangan holda hujumning namunasi SpiderMonkey dvigatelida zararli sahifani ochishda ko'rsatilgan (zamonaviy to'liq brauzerlarda bunday hujum taymerning cheklangan aniqligi va Spectre-dan himoya qilish choralari tufayli mumkin emas);

  • Qatordan chiqib ketish (PDF) - operatsion tizim tomonidan yaqinda yozilgan ma'lumotlarni o'qish va boshqa hujumlarni soddalashtirish uchun OS xotira tartibini aniqlash imkonini beradi;
  • Do'kondan oqishga yo'naltirish — saqlash buferi bilan ishlash uchun protsessorni optimallashtirishdan foydalanadi va yadro manzil maydonini randomizatsiyalash mexanizmini (KASLR) chetlab o'tish, operatsion tizim holatini kuzatish yoki tashkilot Spectre usullariga asoslangan gadjetlar bilan birgalikda oqish.

Aniqlangan zaifliklar:

  • CVE-2018-12126 - MSBDS (Microarchitectural Store bufer ma'lumotlarini namuna olish), saqlash buferlari tarkibini tiklash. Fallout hujumida foydalanilgan. Xavflilik darajasi 6.5 ball (CVSS) deb belgilanadi;
  • CVE-2018-12127 - MLPDS (Microarchitectural Load Port Data Sampling), yuk porti tarkibini tiklash. RIDL hujumida foydalaniladi. CVSS 6.5;
  • CVE-2018-12130 - MFBDS (Microarchitectural Fill Bufer Data Sampling), to'ldirish buferi tarkibini tiklash. ZombieLoad va RIDL hujumlarida foydalaniladi. CVSS 6.5;
  • CVE-2019-11091 – MDSUM (Microarchitectural Data Sampling Uncacheable Memory), keshlanmagan xotira tarkibini tiklash. RIDL hujumida foydalaniladi. CVSS 3.8.

Essence ilovalar to'g'ridan-to'g'ri kirish imkoniga ega bo'lmagan mikroarxitektura tuzilmalaridagi ma'lumotlarga yon kanalli tahlil usullarini qo'llash qobiliyatidagi muammolarni aniqladi. Biz to'ldirish buferlari (Line Fill Buffer), saqlash buferlari (Store Buffer) va yuk portlari (Load Port) kabi past darajadagi tuzilmalar haqida ketmoqda, ular birinchi darajali keshga (L1D), ma'lumotlarni yuklash keshiga qaraganda kichikroq qurilish bloklaridir. RDCL ) yoki L1TF (L1 terminal xatosi) va shunga mos ravishda kamroq ma'lumotni o'z ichiga oladi va intensiv ravishda yangilanadi.

Intel protsessorlarida zaifliklarning yangi sinfi joriy etildi

Mikroarxitektura tuzilmalariga yon kanalli hujumlarni amalga oshirish kesh tarkibini tiklash usullariga qaraganda ancha qiyin va xotiradagi ma'lum manzillar bilan bog'liqligini aniqlash uchun katta hajmdagi ma'lumotlarni kuzatish va tahlil qilishni talab qiladi (aslida, tajovuzkor ma'lum ma'lumotlarni maqsadli ravishda ushlab tura olmaydi). , lekin sizib chiqishlarni to'plash va ma'lum turdagi ma'lumotlarni qayta tiklash uchun statistik usullarni qo'llash uchun vaqt kerak). Bundan tashqari, hujum faqat tajovuzkorning kodi bilan bir xil jismoniy protsessor yadrosidagi ma'lumotlarga ta'sir qiladi.

Mikroarxitektura tuzilmalarining tarkibini aniqlashning tavsiya etilgan usullari ushbu tuzilmalar istisnolarni (nosozliklarni) spekulyativ ishlov berish yoki yuklash va saqlash operatsiyalari paytida qo'llanilishiga asoslanadi.
Spekulyativ bajarish jarayonida ichki tuzilmalarning mazmuni qayta ishlash uchun registrlarga yoki keshlarga yo'naltiriladi. Spekulyativ operatsiyalar yakunlanmaydi va natija bekor qilinadi, lekin qayta yo'naltirilgan tarkibni yon kanal keshini tahlil qilish usullari yordamida aniqlash mumkin.

Yuklash portlari protsessor tomonidan xotiradan yoki kiritish-chiqarish quyi tizimidan ma'lumotlarni qabul qilish va qabul qilingan ma'lumotlarni CPU registrlariga taqdim etish uchun ishlatiladi. Amalga oshirish xususiyati tufayli eski yuklab olish operatsiyalari ma'lumotlari yangi ma'lumotlar bilan qayta yozilgunga qadar portlarda qoladi, bu esa istisnolar (nosozliklar) va SSE/AVX/ manipulyatsiyasi orqali yuklab olish portidagi ma'lumotlarning holatini bilvosita aniqlash imkonini beradi. 512 bitdan ortiq ma'lumotlarni yuklaydigan AVX-64 ko'rsatmalari. Bunday sharoitlarda yuk operatsiyalari spekulyativ ravishda eskirgan ma'lumotlar qiymatlarini ichki tuzilmalardan bog'liq operatsiyalarga ochib beradi. Xuddi shunday, oqish protsessor keshiga yozishni tezlashtirish uchun ishlatiladigan va manzillar, qiymatlar va bayroqlar jadvalini o'z ichiga olgan saqlash buferi, shuningdek ma'lumotlarni o'z ichiga olgan to'ldirish buferi orqali tashkil etiladi. hali L1 keshida (kesh-miss) yo'q, hozircha boshqa darajadagi keshlardan yuklanmoqda.

Intel protsessorlarida zaifliklarning yangi sinfi joriy etildi

muammo ta'sir qiladi 2011 yildan beri ishlab chiqarilgan Intel protsessor modellari (6-avloddan boshlab). Bunday holda, apparat zaifliklari Intel Core’ning 8 va 9-avlodlari va 2-avlod Intel Xeon Scalable’ning ayrim modellaridan boshlab bloklanadi (IA32_ARCH_CAPABILITIES MSR da ARCH_CAP_MDS_NO bitidan foydalanib tekshirishingiz mumkin). Zaifliklar allaqachon mavjud bartaraf etildi proshivka, mikrokod va operatsion tizimlar darajasida. Intel ko'pchilik foydalanuvchilar uchun yamoqni faollashtirgandan so'ng unumdorlik yo'qolishini hisoblaydi kamroq 3%. Hyper-Threading texnologiyasi o'chirilgan bo'lsa, unumdorlikning pasayishi SPECint_rate_base testida 9% gacha, faol butun sonlarni hisoblashda 11% gacha va server tomonidagi Java ilovalarini ishga tushirganda 19% gacha (HT yoqilgan holda, deyarli unumdorlikning pasayishi yo'q). Yamalar kiritish/chiqarish ishiga kam ta'sir qiladi.

Linux yadrosi MDS dan himoya qiladi qo'shildi bugungi kunda yangilanishlar 5.1.2, 5.0.16,
4.19.43, 4.14.119 va 4.9.176. Himoya usuli qurilish ishlari olib borilmoqda yadrodan foydalanuvchi maydoniga qaytish vaqtida yoki boshqaruvni VERW ko'rsatmasi qo'llaniladigan mehmon tizimiga o'tkazishda mikroarxitektura buferlari tarkibini tozalash bo'yicha. Himoya ishlashi uchun u so'nggi mikrokod yangilanishida amalga oshirilgan MD_CLEAR rejimini qo'llab-quvvatlashni talab qiladi. To'liq himoya qilish uchun Hyper Threadingni o'chirib qo'yish tavsiya etiladi. Tizimning Linux yadrosidagi zaifliklarga ta'sirini tekshirish qo'shildi ishlov beruvchi "/sys/devices/system/cpu/vulnerabilities/mds". Turli xil zaifliklarni blokirovka qilish rejimlarini qo'shishni nazorat qilish uchun yadroga "mds =" parametri qo'shildi, u "full", "full,nosmt" (Hyper-Threads-ni o'chirish), "vmwerv" va qiymatlarni qabul qilishi mumkin. "o'chirilgan".

Paket yangilanishlari allaqachon chiqarilgan RHEL и Ubuntu, lekin hozircha mavjud emas Debian, Fedora и SUSE.
Virtual mashinalardan ma'lumotlar sizib chiqishini bloklash uchun tuzatish ham shakllangan Xen gipervisor uchun. Boshqaruvni boshqa virtual mashinaga o'tkazishdan oldin L1D_FLUSH buyrug'ini chiqaradigan virtualizatsiya tizimlarini himoya qilish va Intel SGX anklavlarini himoya qilish uchun mikrokodni yangilash kifoya.

Manba: opennet.ru

a Izoh qo'shish