UEFI Secure Boot-ni masofadan chetlab o'tish uchun Ubuntu-da Lockdown himoyasini o'chirish usullari

Google kompaniyasidan Andrey Konovalov chop himoya qilishni masofadan o'chirish usuli Bekor qilishUbuntu bilan birga yuborilgan Linux yadrosi paketida taklif etiladi (texnikalar nazariy jihatdan tavsiya etilgan bo'lishi kerak Fedora yadrosi va boshqa tarqatish bilan ishlash, lekin ular sinovdan o'tkazilmaydi).

Bloklash ildiz foydalanuvchisining yadroga kirishini cheklaydi va UEFI Secure Boot bypass yo'llarini bloklaydi. Masalan, blokirovka rejimida /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes disk raskadrovka rejimi, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), ba'zilariga kirish interfeyslar cheklangan CPUning ACPI va MSR registrlari, kexec_file va kexec_load ga qo'ng'iroqlar bloklangan, uyqu rejimi taqiqlangan, PCI qurilmalari uchun DMA foydalanish cheklangan, EFI o'zgaruvchilardan ACPI kodini import qilish taqiqlangan, I/U portlari bilan manipulyatsiyalar amalga oshirilmagan. ruxsat etilgan, shu jumladan uzilish raqamini va ketma-ket port uchun I/U portini o'zgartirish.

Lockdown mexanizmi yaqinda asosiy Linux yadrosiga qo'shildi 5.4, lekin tarqatishda ta'minlangan yadrolarda u hali ham yamalar shaklida amalga oshiriladi yoki yamoqlar bilan to'ldiriladi. Tarqatish to'plamlarida taqdim etilgan qo'shimchalar va yadroga o'rnatilgan dastur o'rtasidagi farqlardan biri, agar siz tizimga jismoniy kirish imkoningiz bo'lsa, taqdim etilgan qulflashni o'chirib qo'yish qobiliyatidir.

Ubuntu va Fedora-da Lockdown-ni o'chirish uchun Alt + SysRq + X tugmalar birikmasi taqdim etiladi. Ma'lumki, Alt+SysRq+X kombinatsiyasidan faqat qurilmaga jismoniy kirish bilan foydalanish mumkin, va masofaviy xakerlik va root ruxsatiga ega bo'lgan taqdirda, tajovuzkor Lockdownni o'chira olmaydi va, masalan, yuklay olmaydi. yadroga raqamli imzolanmagan rootkitga ega modul.

Andrey Konovalov foydalanuvchining jismoniy mavjudligini tasdiqlash uchun klaviaturaga asoslangan usullar samarasiz ekanligini ko'rsatdi. Lockdownni o'chirib qo'yishning eng oddiy usuli bu dasturiy ta'minot simulyatsiya /dev/uinput orqali Alt+SysRq+X tugmalarini bosing, lekin bu parametr dastlab bloklanadi. Shu bilan birga, Alt+SysRq+X ni almashtirishning kamida yana ikkita usulini aniqlash mumkin edi.

Birinchi usul "sysrq-trigger" interfeysidan foydalanishni o'z ichiga oladi - uni simulyatsiya qilish uchun /proc/sys/kernel/sysrq-ga "1" yozish orqali ushbu interfeysni yoqing va keyin /proc/sysrq-triggerga "x" ni yozing. Dedi bo'shliq bartaraf etildi dekabrdagi Ubuntu yadrosi yangilanishida va Fedora 31 da. Shunisi e'tiborga loyiqki, ishlab chiquvchilar, /dev/uinput misolida bo'lgani kabi, dastlab harakat qildi ushbu usulni blokirovka qilish, lekin blokirovka qilish tufayli ishlamadi xatolar kodda.

Ikkinchi usul orqali klaviatura emulyatsiyasi mavjud USB/IP keyin virtual klaviaturadan Alt+SysRq+X ketma-ketligini yuborish. Ubuntu bilan birga yuborilgan USB/IP yadrosi sukut bo'yicha yoqilgan (CONFIG_USBIP_VHCI_HCD=m va CONFIG_USBIP_CORE=m) va ishlash uchun zarur bo'lgan raqamli imzolangan usbip_core va vhci_hcd modullarini ta'minlaydi. Hujumchi mumkin sozlash virtual USB qurilmasi, ishga tushirildi orqaga qaytish interfeysida tarmoq ishlovchisi va uni USB/IP yordamida masofaviy USB qurilmasi sifatida ulash. Belgilangan usul haqida xabar berdi Ubuntu ishlab chiquvchilari uchun, lekin tuzatish hali chiqarilmagan.

Manba: opennet.ru

a Izoh qo'shish