Serverdagi xotira qismlarini masofadan aniqlash uchun hujum usuli taklif qilindi

Ilgari MDS, NetSpectre, Throwhammer va ZombieLoad hujumlarini ishlab chiqish bilan mashhur boʻlgan Grats Texnik Universitetining (Avstriya) bir guruh tadqiqotchilari Xotirani yoʻq qilish mexanizmiga qarshi yangi yon kanalli hujum usulini (CVE-2021-3714) nashr etdilar. , bu xotirada ma'lum ma'lumotlar mavjudligini aniqlash, xotira tarkibining bayt-bayt oqishini tashkil qilish yoki manzilga asoslangan randomizatsiya (ASLR) himoyasini chetlab o'tish uchun xotira tartibini aniqlash imkonini beradi. Yangi usul deduplikatsiya mexanizmiga hujumlarning ilgari ko‘rsatilgan variantlaridan farq qiladi, chunki HTTP/1 va HTTP/2 protokollari orqali tajovuzkorga yuborilgan so‘rovlarga javob vaqtining o‘zgarishi mezon sifatida tashqi xostdan hujum amalga oshiriladi. Hujumni amalga oshirish qobiliyati Linux va Windows-ga asoslangan serverlar uchun ko'rsatilgan.

Xotirani deuplikatsiya qilish mexanizmiga hujumlar yozish operatsiyasini qayta ishlash vaqtidagi farqdan ma'lumotlarning o'zgarishi Copy-On-Write (COW) mexanizmi yordamida nusxalangan xotira sahifasini klonlashga olib keladigan holatlarda ma'lumotni sizib chiqish uchun kanal sifatida foydalanadi. . Ishlash vaqtida yadro turli jarayonlardan bir xil xotira sahifalarini aniqlaydi va ularni birlashtiradi, faqat bitta nusxani saqlash uchun bir xil xotira sahifalarini jismoniy xotiraning yagona maydoniga joylashtiradi. Jarayonlardan biri nusxalangan sahifalar bilan bog'liq ma'lumotlarni o'zgartirishga harakat qilganda, istisno (sahifa xatosi) yuzaga keladi va Copy-On-Write mexanizmidan foydalangan holda, jarayonga tayinlangan xotira sahifasining alohida nusxasi avtomatik ravishda yaratiladi. Nusxani to'ldirish uchun qo'shimcha vaqt sarflanadi, bu boshqa jarayonga xalaqit beradigan ma'lumotlarning o'zgarishi belgisi bo'lishi mumkin.

Tadqiqotchilar COW mexanizmidan kelib chiqadigan kechikishlarni nafaqat mahalliy, balki tarmoq orqali javoblarni etkazib berish vaqtlaridagi o'zgarishlarni tahlil qilish orqali ham qo'lga kiritish mumkinligini ko'rsatdi. HTTP/1 va HTTP/2 protokollari bo'yicha so'rovlarni bajarish vaqtini tahlil qilish orqali masofaviy xostdan xotira tarkibini aniqlashning bir necha usullari taklif qilingan. Tanlangan shablonlarni saqlash uchun so'rovlarda olingan ma'lumotlarni xotirada saqlaydigan standart veb-ilovalar qo'llaniladi.

Hujumning umumiy printsipi serverdagi xotira sahifasini serverda mavjud bo'lgan xotira sahifasining mazmunini potentsial ravishda takrorlaydigan ma'lumotlar bilan to'ldirishdan iborat. Keyin tajovuzkor yadro xotira sahifasini birlashtirish va birlashtirish uchun zarur bo'lgan vaqtni kutadi, so'ngra boshqariladigan dublikat ma'lumotlarini o'zgartiradi va zarba muvaffaqiyatli bo'lganligini aniqlash uchun javob vaqtini baholaydi.

Serverdagi xotira qismlarini masofadan aniqlash uchun hujum usuli taklif qilindi

Tajribalar davomida ma'lumotlarning maksimal tarqalishi tezligi global tarmoq orqali hujum qilishda soatiga 34.41 baytni va mahalliy tarmoq orqali hujum qilishda soatiga 302.16 baytni tashkil etdi, bu uchinchi tomon kanallari orqali ma'lumotlarni olishning boshqa usullariga qaraganda tezroq (masalan, NetSpectre hujumida ma'lumotlarni uzatish tezligi soat birda 7.5 baytni tashkil qiladi).

Uchta ishchi hujum varianti taklif qilingan. Birinchi variant Memcached-dan foydalanadigan veb-server xotirasidagi ma'lumotlarni aniqlash imkonini beradi. Hujum Memcached xotirasiga ma'lum ma'lumotlar to'plamini yuklash, takrorlangan blokni tozalash, xuddi shu elementni qayta yozish va blok tarkibini o'zgartirish orqali COW nusxasini olish uchun shart yaratishdan iborat. Memcached bilan tajriba davomida virtual mashinada ishlaydigan tizimda o'rnatilgan libc versiyasini 166.51 soniyada aniqlash mumkin bo'ldi.

Ikkinchi variant InnoDB xotirasidan foydalanganda MariaDB DBMSdagi yozuvlar tarkibini bayt-baytga qayta yaratish orqali aniqlash imkonini berdi. Hujum maxsus o'zgartirilgan so'rovlarni yuborish orqali amalga oshiriladi, natijada xotira sahifalarida bir baytli nomuvofiqliklar yuzaga keladi va bayt mazmuni haqidagi taxmin to'g'ri ekanligini aniqlash uchun javob vaqtini tahlil qiladi. Bunday qochqinning tezligi past va mahalliy tarmoqdan hujum qilganda soatiga 1.5 baytni tashkil qiladi. Usulning afzalligi shundaki, u noma'lum xotira tarkibini tiklash uchun ishlatilishi mumkin.

Uchinchi variant 4 daqiqada KASLR himoya mexanizmini butunlay chetlab o'tish va boshqa ma'lumotlar o'zgarmaydigan ofset manzili xotira sahifasida bo'lgan vaziyatda virtual mashina yadrosi tasvirining xotira ofseti haqida ma'lumot olish imkonini berdi. Hujum hujum qilingan tizimdan 14 hop masofada joylashgan mezbon tomonidan amalga oshirildi. Taqdim etilgan hujumlarni amalga oshirish uchun kod misollari GitHub-da nashr etilishi va'da qilingan.

Manba: opennet.ru

a Izoh qo'shish