BHI - bu Intel va ARM protsessorlarida Spectre sinfidagi yangi zaiflik

Amsterdamdagi Vrije Universiteit tadqiqotchilari guruhi Intel va ARM protsessorlarining mikroarxitektura tuzilmalarida yangi zaiflikni aniqladilar, bu esa Spectre-v2 zaifligining kengaytirilgan versiyasi bo‘lib, protsessorlarga qo‘shilgan eIBRS va CSV2 himoya mexanizmlarini chetlab o‘tish imkonini beradi. . Zaiflikka bir nechta nom berilgan: BHI (Branch History Injection, CVE-2022-0001), BHB (Branch History Buffer, CVE-2022-0002) va Spectre-BHB (CVE-2022-23960), ular turli ko'rinishlarini tavsiflaydi. bir xil muammo (BHI - turli darajadagi imtiyozlarga ta'sir qiluvchi hujum, masalan, foydalanuvchi jarayoni va yadro, BHB - bir xil imtiyozlar darajasidagi hujum, masalan, eBPF JIT va yadro).

Tadqiqotchilar yadro xotirasidan foydalanuvchi maydonidan o'zboshimchalik bilan ma'lumotlarni olish imkonini beruvchi ishlaydigan ekspluatatsiyani namoyish qilishdi. Misol uchun, tayyorlangan ekspluatatsiya yordamida yadro buferlaridan /etc/shadow faylidan yuklangan ildiz foydalanuvchi parolining xeshiga ega qatorni qanday chiqarish mumkinligi ko'rsatilgan. Ekspluatatsiya foydalanuvchi tomonidan yuklangan eBPF dasturi yordamida bitta imtiyoz darajasidagi zaiflikdan (yadrodan yadroga hujum) foydalanish imkoniyatini namoyish etadi. EBPF o'rniga yadro kodidagi mavjud Spectre gadjetlarini, ko'rsatmalarning spekulyativ bajarilishiga olib keladigan buyruqlar ketma-ketligini ishlatish ham mumkin.

Videoni ijro etish

Zaiflik Atom oilasidagi protsessorlar bundan mustasno, hozirgi Intel protsessorlarining aksariyatida uchraydi. ARM protsessorlari orasida Cortex-A15, Cortex-A57, Cortex-A7*, Cortex-X1, Cortex-X2, Cortex-A710, Neoverse N1, Neoverse N2, Neoverse V1 va, ehtimol, ba'zi Cortex-R chiplari muammodan ta'sirlangan. Tadqiqotlarga ko'ra, zaiflik AMD protsessorlarida ko'rinmaydi. Muammoni bartaraf qilish uchun zaiflikni blokirovka qilish uchun bir nechta dasturiy ta'minot usullari taklif qilindi, ular kelajakdagi CPU modellarida apparat himoyasi paydo bo'lishidan oldin foydalanish mumkin.

eBPF quyi tizimi orqali hujumlarni blokirovka qilish uchun “/proc/sys/kernel/unprivileged_bpf_disabled” fayliga 1 yozish yoki “sysctl -w kernel” buyrug‘ini ishga tushirish orqali imtiyozsiz foydalanuvchilar uchun eBPF dasturlarini yuklab olish imkoniyatini sukut bo‘yicha o‘chirib qo‘yish tavsiya etiladi. unprivileged_bpf_disabled=1”. Gadjet hujumlarini blokirovka qilish uchun LFENCE yo‘riqnomasidan potentsial spekulyativ ijroga olib keladigan kod sohalarida foydalanish tavsiya etiladi. Shunisi e'tiborga loyiqki, ko'pgina Linux distributivlarining standart konfiguratsiyasi allaqachon tadqiqotchilar tomonidan namoyish etilgan eBPF hujumini blokirovka qilish uchun zarur bo'lgan himoya choralarini o'z ichiga oladi. Intelning eBPF-ga imtiyozsiz kirishni o'chirish bo'yicha tavsiyalari ham Linux yadrosi 5.16 dan beri sukut bo'yicha bo'lib, avvalgi filiallarga qaytariladi.

Kontseptual ravishda, BHI bu Spectre-v2 hujumining kengaytirilgan versiyasi bo'lib, unda qo'shimcha himoyani chetlab o'tish (Intel eIBRS va Arm CSV2) va ma'lumotlar sizib chiqishini tashkil qilish uchun protsessorda prognozni oshirish uchun ishlatiladigan Filiallar tarixi buferida qiymatlarni almashtirish qo'llaniladi. o'tgan o'tishlar tarixini hisobga olgan holda aniqlik dallanishi. Hujum paytida, o'tish tarixi bilan manipulyatsiyalar orqali, o'tishni noto'g'ri bashorat qilish va kerakli ko'rsatmalarning spekulyativ bajarilishi uchun sharoitlar yaratiladi, buning natijasi keshda tugaydi.

Branch Target bufer o‘rniga filial tarixi buferidan foydalanish bundan mustasno, yangi hujum Spectre-v2 bilan bir xil. Tajovuzkorning vazifasi spekulyativ operatsiyani bajarishda manzil belgilangan ma'lumotlar hududidan olinadigan sharoitlarni yaratishdir. Spekulyativ bilvosita o'tishni amalga oshirgandan so'ng, xotiradan o'qilgan o'tish manzili keshda qoladi, shundan so'ng kesh tarkibini aniqlash usullaridan biri keshlangan va keshlanmagan kirish vaqtidagi o'zgarishlarni tahlil qilish asosida uni olish uchun ishlatilishi mumkin. ma'lumotlar.

Manba: opennet.ru