AMD protsessorlarida kesh-kanallarni bashorat qilish mexanizmiga ikkita hujum

Ilgari hujum usullarini ishlab chiqish bilan tanilgan Grats texnologiya universiteti (Avstriya) tadqiqotchilari guruhi MDS, NetSpectre, Otish bolg'asi и ZombieLoad, AMD protsessorlariga xos apparat optimallashtirish bo'yicha tadqiqotlar o'tkazdi va rivojlandi AMD protsessorlarining LXNUMX kesh-kanallarini bashorat qilish mexanizmining ishlashi paytida ma'lumotlar sizib chiqishini boshqaradigan yon kanalli hujumlarning ikkita yangi usuli. Usullar ASLR himoyasi samaradorligini pasaytirish, zaif AES dasturlarida kalitlarni tiklash va Spectre hujumi samaradorligini oshirish uchun ishlatilishi mumkin.

Qaysi kesh kanalida ma'lum bir xotira manzilini o'z ichiga olganligini taxmin qilish uchun ishlatiladigan protsessorning birinchi darajali ma'lumotlar keshida (L1D) kanalni bashorat qilish mexanizmini (yo'l bashoratchisi) amalga oshirishda muammolar aniqlandi. AMD protsessorlarida qo'llaniladigan optimallashtirish m-teglarni (mTag) tekshirishga asoslangan. mTag virtual manzilga ma'lum bir xesh funktsiyasini qo'llash orqali hisoblanadi. Ish paytida kanalni bashorat qilish mexanizmi jadvaldan kesh kanalini aniqlash uchun mTag dan foydalanadi. Shunday qilib, mTag protsessorga barcha variantlarni qidirmasdan, faqat ma'lum bir kanalga kirishni cheklash imkonini beradi, bu esa CPU energiya sarfini sezilarli darajada kamaytiradi.

AMD protsessorlarida kesh-kanallarni bashorat qilish mexanizmiga ikkita hujum

2011 yildan 2019 yilgacha chiqarilgan AMD protsessorlarining turli avlodlarida kanallarni bashorat qilish tizimini joriy qilishning teskari muhandisligi davomida ikkita yangi yon kanal hujumi texnikasi aniqlandi:

  • Collide+Probe - buzg'unchiga bir xil mantiqiy protsessor yadrosida ishlaydigan jarayonlar uchun xotiraga kirishni kuzatish imkonini beradi. Usulning mohiyati xotiraga kirishni kuzatish uchun mTagni hisoblash uchun ishlatiladigan xesh funktsiyasida to'qnashuvlarni keltirib chiqaradigan virtual manzillardan foydalanishdir. Intel protsessorlarida qo'llaniladigan Flush+Reload va Prime+Probe hujumlaridan farqli o'laroq, Collide+Probe umumiy xotiradan foydalanmaydi va jismoniy manzillarni bilmasdan ishlaydi.
  • Load+Reload - bir xil jismoniy protsessor yadrosida xotiraga kirish izlarini juda aniq aniqlash imkonini beradi. Usul jismoniy xotira hujayrasi L1D keshida faqat bir marta bo'lishi mumkinligiga asoslanadi. Bular. boshqa virtual manzilda bir xil xotira katakchasiga kirish hujayraning L1D keshidan chiqarilishiga olib keladi, bu esa xotiraga kirishni kuzatish imkonini beradi. Hujum umumiy xotiraga tayansa-da, u kesh qatorlarini tozalamaydi, bu esa oxirgi darajadagi keshdan ma'lumotlarni chiqarib tashlamaydigan yashirin hujumlarga imkon beradi.

Collide+Probe va Load+Reload texnikasiga asoslanib, tadqiqotchilar bir nechta yon kanalli hujum stsenariylarini namoyish etdilar:

  • Ikki jarayon o'rtasida sekundiga 588 kB gacha tezlikda ma'lumotlarni uzatish imkonini beruvchi yashirin bilvosita aloqa kanalini tashkil qilish usullaridan foydalanish imkoniyati ko'rsatilgan.
  • mTag-dagi to'qnashuvlardan foydalanib, ASLR ning turli xil variantlari uchun entropiyani kamaytirish mumkin edi (Address Space Layout Randomization) va to'liq yangilangan Linux tizimida yadrodagi ASLR himoyasini chetlab o'tish mumkin edi. ASLR entropiyasini pasaytirish uchun foydalanuvchi ilovalaridan ham, sandbox muhitida bajarilgan JavaScript kodidan va boshqa mehmon muhitida ishlaydigan koddan foydalangan holda hujumni amalga oshirish imkoniyati ko'rsatilgan.

    AMD protsessorlarida kesh-kanallarni bashorat qilish mexanizmiga ikkita hujum

  • Collide+Probe usuliga asoslanib, himoyasiz dasturdan shifrlash kalitini tiklash uchun hujum amalga oshirildi (asoslangan). T-jadval) AES shifrlash.
  • Ma'lumotlar yig'ish kanali sifatida Collide+Probe usulidan foydalangan holda, Spectre hujumi umumiy xotiradan foydalanmasdan yadrodan shaxsiy ma'lumotlarni ajratib olishga muvaffaq bo'ldi.

Zaiflik mikroarxitekturaga asoslangan AMD protsessorlarida yuzaga keladi
Buldozer, Piledriver, Steamroller, Zen (Ryzen, Epic), Zen+ va Zen2.
AMD muammo haqida 23-yil 2019-avgustda xabardor qilingan, ammo hozirgacha hisobotni e'lon qilmadi zaiflikni bloklash haqida ma'lumot bilan. Tadqiqotchilarning fikriga ko'ra, tarmoqni bashorat qilish mexanizmlarini o'chirib qo'yishni nazorat qilish uchun Intel qilganiga o'xshash, kanalni bashorat qilish tizimini tanlab o'chirish uchun MSR bitlarini taqdim etish orqali muammo mikrokodni yangilash darajasida bloklanishi mumkin.

AMD protsessorlarida kesh-kanallarni bashorat qilish mexanizmiga ikkita hujum

Manba: opennet.ru

a Izoh qo'shish