Ko'rsatmalarni bajarish vaqtining ARM va Intel protsessorlaridagi ma'lumotlarga bog'liqligi

Erik Biggers, Adiantum shifrini ishlab chiquvchilardan biri va Linux yadrosi fscrypt quyi tizimini ta'minlovchisi, Intel protsessorlarining turli xil qayta ishlangan ma'lumotlarning doimiy bajarilishini kafolatlamaydigan xususiyatidan kelib chiqadigan xavfsizlik muammolarini blokirovka qilish uchun yamoqlar to'plamini taklif qildi. Muammo Ice Lake oilasidan boshlangan Intel protsessorlarida paydo bo'ladi. Xuddi shunday muammo ARM protsessorlarida ham kuzatiladi.

Ko'rsatmalarning bajarilishi vaqtining ushbu ko'rsatmalarda qayta ishlangan ma'lumotlarga bog'liqligi mavjudligi yamoqlar muallifi tomonidan protsessorlarning zaifligi sifatida baholanadi, chunki bunday xatti-harakatlar tizimda amalga oshirilgan kriptografik operatsiyalar xavfsizligini kafolatlay olmaydi. Kriptografik algoritmlarning ko'pgina ilovalari ma'lumotlar ko'rsatmalarning bajarilish vaqtiga ta'sir qilmasligini ta'minlash uchun mo'ljallangan va bu xatti-harakatni buzish uni qayta ishlash vaqtini tahlil qilish asosida ma'lumotlarni qayta tiklaydigan yon kanal hujumlarini yaratishga olib kelishi mumkin.

Potensial ravishda, ish vaqti ma'lumotlariga bog'liqlik foydalanuvchi maydonidan yadro ma'lumotlarini aniqlash uchun hujumlarni boshlash uchun ham ishlatilishi mumkin. Erik Biggersning so'zlariga ko'ra, qo'shimcha va XOR operatsiyalarini bajaradigan ko'rsatmalar, shuningdek, maxsus AES-NI ko'rsatmalari uchun doimiy bajarish vaqti sukut bo'yicha ta'minlanmaydi (ma'lumotlar testlar bilan tasdiqlanmagan, boshqa ma'lumotlarga ko'ra, bir marta kechikish mavjud. vektorni ko'paytirish va bitni hisoblash paytida tsikl ).

Ushbu xatti-harakatni o'chirish uchun Intel va ARM yangi bayroqlarni taklif qildi: ARM protsessorlari uchun PSTATE bit DIT (ma'lumotlardan mustaqil vaqt) va Intel protsessorlari uchun MSR bit DOITM (ma'lumotlar operandlari mustaqil vaqt rejimi), doimiy bajarilish vaqti bilan eski xatti-harakatni qaytaradi. Intel va ARM tanqidiy kod uchun kerak bo'lganda himoyani yoqishni tavsiya qiladi, lekin aslida muhim hisoblash yadro va foydalanuvchi maydonining istalgan joyida sodir bo'lishi mumkin, shuning uchun biz har doim butun yadro uchun DOITM va DIT rejimlarini yoqishni ko'rib chiqamiz.

ARM protsessorlari uchun Linux 6.2 yadro filiali allaqachon yadro uchun xatti-harakatlarni o'zgartiruvchi yamoqlarni qabul qilgan, ammo bu yamalar etarli emas deb hisoblanadi, chunki ular faqat yadro kodini qamrab oladi va foydalanuvchi maydoni uchun xatti-harakatlarni o'zgartirmaydi. Intel protsessorlari uchun himoyani kiritish hali ko'rib chiqish bosqichida. Yamoqning ishlashga ta'siri hali o'lchanmagan, biroq Intel hujjatlariga ko'ra, DOITM rejimini yoqish unumdorlikni pasaytiradi (masalan, ma'lumotlarni oldindan yuklash kabi ba'zi optimallashtirishlarni o'chirib qo'yish orqali) va kelajakdagi protsessor modellarida unumdorlikning pasayishi oshishi mumkin. .

Manba: opennet.ru

a Izoh qo'shish