UEFI Secure Boot-ni chetlab o'tishi mumkin bo'lgan GRUB2-dagi zaifliklar

GRUB2 yuklash moslamasida UEFI Secure Boot mexanizmini chetlab oβ€˜tish va tasdiqlanmagan kodni ishga tushirish imkonini beruvchi 7 ta zaiflik tuzatildi, masalan, yuklovchi yoki yadro darajasida ishlaydigan zararli dasturlarni joriy qilish. Bundan tashqari, shim qatlamida bitta zaiflik mavjud bo'lib, u sizga UEFI Secure Boot-ni chetlab o'tish imkonini beradi. Zaifliklar guruhi avval bootloaderda aniqlangan shunga o'xshash muammolarga o'xshash Boothole 3 kod nomini oldi.

GRUB2 va shimdagi muammolarni bartaraf qilish uchun tarqatishlar GRUB2, shim va fwupd uchun qo'llab-quvvatlanadigan SBAT (UEFI Secure Boot Advanced Targeting) mexanizmidan foydalanishi mumkin. SBAT Microsoft bilan birgalikda ishlab chiqilgan va ishlab chiqaruvchi, mahsulot, komponent va versiya haqidagi ma'lumotlarni o'z ichiga olgan UEFI komponentlarining bajariladigan fayllariga qo'shimcha metama'lumotlarni qo'shishni o'z ichiga oladi. Belgilangan metama'lumotlar raqamli imzo bilan tasdiqlangan va UEFI Secure Boot uchun ruxsat etilgan yoki taqiqlangan komponentlar ro'yxatiga alohida kiritilishi mumkin.

Ko'pgina Linux distributivlari UEFI Secure Boot rejimida tasdiqlangan yuklash uchun Microsoft tomonidan raqamli imzolangan kichik shim qatlamidan foydalanadi. Ushbu qatlam GRUB2 ni o'z sertifikati bilan tasdiqlaydi, bu esa tarqatish ishlab chiquvchilariga Microsoft tomonidan sertifikatlangan har bir yadro va GRUB yangilanishiga ega bo'lmaslik imkonini beradi. GRUB2-dagi zaifliklar shimni muvaffaqiyatli tekshirish bosqichida kodingizning bajarilishiga erishishga imkon beradi, lekin operatsion tizimni yuklashdan oldin, xavfsiz yuklash rejimi faol bo'lganda ishonch zanjiriga qo'shiling va keyingi yuklash jarayoni ustidan to'liq nazoratni qo'lga kiriting. boshqa operatsion tizimni yuklash, operatsion tizim komponentlari tizimini o'zgartirish va Lockdown himoyasini chetlab o'tish.

Yuklash moslamasidagi muammolarni bartaraf etish uchun distribyutorlar yangi ichki raqamli imzolarni yaratishi va o'rnatuvchilarni, yuklash moslamalarini, yadro paketlarini, fwupd proshivkasini va shim qatlamini yangilashi kerak bo'ladi. SBAT joriy etilishidan oldin sertifikatni bekor qilish ro'yxatini (dbx, UEFI Revocation List) yangilash zaiflikni to'liq blokirovka qilish uchun zaruriy shart edi, chunki tajovuzkor ishlatiladigan operatsion tizimdan qat'i nazar, GRUB2 ning eski zaif versiyasi bilan yuklanadigan mediadan foydalanishi mumkin edi. UEFI Secure Boot dasturini buzish uchun raqamli imzo bilan tasdiqlangan.

Imzoni bekor qilish o'rniga, SBAT Secure Boot uchun kalitlarni bekor qilmasdan individual komponent versiyalari raqamlari uchun foydalanishni blokirovka qilishga imkon beradi. SBAT orqali zaifliklarni bloklash UEFI sertifikatini bekor qilish roΚ»yxatidan (dbx) foydalanishni talab qilmaydi, lekin imzolarni yaratish va GRUB2, shim va tarqatishlar tomonidan taqdim etilgan boshqa yuklash artefaktlarini yangilash uchun ichki kalitni almashtirish darajasida amalga oshiriladi. Hozirda SBAT qo'llab-quvvatlashi allaqachon eng mashhur Linux distributivlariga qo'shilgan.

Aniqlangan zaifliklar:

  • CVE-2021-3696, CVE-2021-3695 maxsus mo'ljallangan PNG tasvirlarini qayta ishlashda to'plangan bufer to'lib-toshgan bo'lib, ular nazariy jihatdan tajovuzkor kodini bajarish va UEFI Secure Boot-ni chetlab o'tish uchun ishlatilishi mumkin. Ta'kidlanishicha, muammodan foydalanish qiyin, chunki ishlaydigan ekspluatatsiyani yaratish juda ko'p sonli omillarni va xotira tartibi haqidagi ma'lumotlarning mavjudligini hisobga olishni talab qiladi.
  • CVE-2021-3697 - JPEG tasvirni qayta ishlash kodida buferning kamayishi. Muammodan foydalanish xotira tartibini bilishni talab qiladi va PNG muammosi (CVSS 7.5) bilan bir xil murakkablik darajasida.
  • CVE-2022-28733 - grub_net_recv_ip4_packets() funksiyasidagi butun sonning toβ€˜lib ketishi rsm->total_len parametriga maxsus tayyorlangan IP-paketni yuborish orqali ta’sir qilish imkonini beradi. Muammo taqdim etilgan zaifliklarning eng xavflisi sifatida belgilangan (CVSS 8.1). Agar muvaffaqiyatli foydalanilsa, zaiflik ataylab kichikroq xotira hajmini ajratish orqali ma'lumotlarni bufer chegarasidan tashqarida yozishga imkon beradi.
  • CVE-2022-28734 - tozalangan HTTP sarlavhalarini qayta ishlashda bir baytli bufer to'lib ketishi. Muammo maxsus yaratilgan HTTP so'rovlarini tahlil qilishda GRUB2 metama'lumotlarining buzilishiga olib kelishi mumkin (bufer tugagandan so'ng null baytni yozish).
  • CVE-2022-28735 shim_lock tekshirgichidagi muammo yadro bo'lmagan fayllarni yuklashga imkon beradi. Zaiflik UEFI Secure Boot rejimida imzolanmagan yadro modullarini yoki tasdiqlanmagan kodni yuklash uchun ishlatilishi mumkin.
  • CVE-2022-28736 GRUB2 tomonidan qo'llab-quvvatlanmaydigan operatsion tizimlarni yuklash uchun zanjir yuklovchi buyrug'ini qayta ishga tushirish orqali grub_cmd_chainloader() funksiyasida allaqachon bo'shatilgan xotiraga kirish. Agar tajovuzkor GRUB2 da xotira taqsimotini aniqlay olsa, ekspluatatsiya tajovuzkor kodining bajarilishiga olib kelishi mumkin.
  • CVE-2022-28737 - Tayyorlangan EFI tasvirlarini yuklash va bajarishda handle_image() funksiyasida shim qatlamidagi bufer to'lib ketishi sodir bo'ladi.

Manba: opennet.ru

a Izoh qo'shish