TrustZone xotirasidan shaxsiy kalitlarni olish imkonini beruvchi Qualcomm chiplaridagi zaiflik

NCC Group tadqiqotchilari ochilgan tafsilotlar zaifliklar (CVE-2018-11976) ARM TrustZone texnologiyasiga asoslangan Qualcomm QSEE (Qualcomm Secure Execution Environment) izolyatsiyalangan anklavida joylashgan shaxsiy shifrlash kalitlari tarkibini aniqlash imkonini beruvchi Qualcomm chiplarida. Muammo o'zini namoyon qiladi eng Android platformasi asosidagi smartfonlarda keng tarqalgan Snapdragon SoC. Muammoni hal qiladigan tuzatishlar allaqachon mavjud vklyucheny aprel oyida Android yangilanishi va Qualcomm chiplari uchun yangi proshivka relizlarida. Qualcomm-ga tuzatishni tayyorlash uchun bir yildan ko'proq vaqt kerak bo'ldi; zaiflik haqidagi ma'lumot dastlab Qualcomm-ga 19 yil 2018 martda yuborilgan.

Eslatib o'tamiz, ARM TrustZone texnologiyasi asosiy tizimdan butunlay ajratilgan va alohida ixtisoslashtirilgan operatsion tizim yordamida alohida virtual protsessorda ishlaydigan apparat-izolyatsiya qilingan himoyalangan muhitlarni yaratish imkonini beradi. TrustZone-ning asosiy maqsadi shifrlash kalitlari, biometrik autentifikatsiya, to'lov ma'lumotlari va boshqa maxfiy ma'lumotlar uchun protsessorlarning izolyatsiya qilingan bajarilishini ta'minlashdan iborat. Asosiy OT bilan o'zaro aloqa bilvosita dispetcherlik interfeysi orqali amalga oshiriladi. Xususiy shifrlash kalitlari apparat tomonidan ajratilgan kalitlar doʻkonida saqlanadi, agar ular toʻgʻri qoʻllanilsa, asosiy tizim buzilgan boʻlsa, ularning oqishi oldini oladi.

Zaiflik elliptik egri chiziqni qayta ishlash algoritmini amalga oshirishdagi nuqson bilan bog‘liq bo‘lib, bu ma’lumotlarni qayta ishlash jarayoni haqidagi ma’lumotlarning sizib chiqib ketishiga olib keldi. Tadqiqotchilar mavjud bilvosita oqishlardan foydalanishga imkon beruvchi yon kanalli hujum texnikasini ishlab chiqdilar. Android kalit do'koni. Oqishlar filialni bashorat qilish blokining faolligini tahlil qilish va xotiradagi ma'lumotlarga kirish vaqtini o'zgartirish asosida aniqlanadi. Eksperimentda tadqiqotchilar Nexus 224X smartfonida ishlatiladigan apparat-izolyatsiya qilingan kalitlar do‘konidan 256 va 5 bitli ECDSA kalitlarini qayta tiklashni muvaffaqiyatli namoyish qilishdi. Kalitni qayta tiklash uchun 12 mingga yaqin elektron raqamli imzoni yaratish kerak bo‘ldi, bunga 14 soatdan ko‘proq vaqt ketadi. Hujumni amalga oshirish uchun ishlatiladigan asboblar Cachegrab.

Muammoning asosiy sababi TrustZone va asosiy tizimda hisob-kitoblar uchun umumiy apparat komponentlari va keshini almashishdir - izolyatsiya mantiqiy ajratish darajasida amalga oshiriladi, lekin umumiy hisoblash birliklari yordamida va hisob-kitoblar izlari va filial haqidagi ma'lumotlar bilan. umumiy protsessor keshiga joylashtirilgan manzillar. Keshlangan ma'lumotlarga kirish vaqtidagi o'zgarishlarni baholashga asoslangan Prime+Probe usulidan foydalanib, keshda ma'lum naqshlar mavjudligini tekshirish orqali ma'lumotlar oqimini va elektron raqamli imzolarni hisoblash bilan bog'liq kodning bajarilishi belgilarini kuzatish mumkin. TrustZone juda yuqori aniqlik bilan.

Qualcomm chiplarida ECDSA kalitlari yordamida raqamli imzoni yaratish uchun ko'p vaqt har bir imzo uchun o'zgarmas bo'lgan ishga tushirish vektoridan foydalangan holda tsiklda ko'paytirish operatsiyalarini bajarishga sarflanadi (nuncio). Agar tajovuzkor ushbu vektor haqidagi ma'lumotlarga ega bo'lgan kamida bir nechta bitni tiklay olsa, butun shaxsiy kalitni ketma-ket tiklash uchun hujumni amalga oshirish mumkin bo'ladi.

Qualcomm misolida, ko'paytirish algoritmida bunday ma'lumotlar chiqib ketgan ikkita joy aniqlangan: jadvallarda qidirish operatsiyalarini bajarishda va "nonce" vektoridagi oxirgi bit qiymatiga asoslangan shartli ma'lumotlarni qidirish kodida. Qualcomm kodida uchinchi tomon kanallari orqali ma'lumotlar sizib chiqishiga qarshi choralar mavjud bo'lishiga qaramay, ishlab chiqilgan hujum usuli ushbu choralarni chetlab o'tishga va 256 bitli ECDSA kalitlarini tiklash uchun etarli bo'lgan "nonce" qiymatining bir nechta bitlarini aniqlashga imkon beradi.

Manba: opennet.ru

a Izoh qo'shish