Kerentanan dalam cip Qualcomm yang membolehkan kunci peribadi diekstrak daripada storan TrustZone

Penyelidik dari Kumpulan NCC terbongkar butiran kelemahan (CVE-2018 11976-) dalam cip Qualcomm, yang membolehkan anda menentukan kandungan kunci penyulitan peribadi yang terletak dalam enklaf terpencil Qualcomm QSEE (Qualcomm Secure Execution Environment), berdasarkan teknologi ARM TrustZone. Masalah itu nyata dalam majoriti Snapdragon SoC, yang telah tersebar luas dalam telefon pintar berdasarkan platform Android. Pembetulan yang membetulkan masalah sudah ada disertakan dalam kemas kini Android April dan keluaran perisian tegar baharu untuk cip Qualcomm. Qualcomm mengambil masa lebih setahun untuk menyediakan pembaikan; maklumat tentang kelemahan itu pada mulanya dihantar kepada Qualcomm pada 19 Mac 2018.

Mari kita ingat bahawa teknologi ARM TrustZone membolehkan anda mencipta persekitaran terlindung terpencil perkakasan yang dipisahkan sepenuhnya daripada sistem utama dan dijalankan pada pemproses maya yang berasingan menggunakan sistem pengendalian khusus yang berasingan. Tujuan utama TrustZone adalah untuk menyediakan pelaksanaan terpencil pemproses untuk kunci penyulitan, pengesahan biometrik, data pembayaran dan maklumat sulit lain. Interaksi dengan OS utama dijalankan secara tidak langsung melalui antara muka penghantaran. Kunci penyulitan peribadi disimpan di dalam stor kunci terpencil perkakasan, yang, jika dilaksanakan dengan betul, boleh menghalang kebocoran jika sistem asas terjejas.

Kerentanan ini disebabkan oleh kecacatan dalam pelaksanaan algoritma pemprosesan lengkung eliptik, yang membawa kepada kebocoran maklumat tentang kemajuan pemprosesan data. Penyelidik telah membangunkan teknik serangan saluran sisi yang membolehkan penggunaan kebocoran tidak langsung sedia ada untuk memulihkan kandungan kunci peribadi yang terletak dalam perkakasan terpencil. Kedai Kunci Android. Kebocoran ditentukan berdasarkan analisis aktiviti blok ramalan cawangan dan perubahan dalam masa capaian kepada data dalam ingatan. Dalam percubaan, penyelidik berjaya menunjukkan pemulihan kunci ECDSA 224- dan 256-bit daripada stor kunci terpencil perkakasan yang digunakan dalam telefon pintar Nexus 5X. Memulihkan kunci diperlukan menghasilkan kira-kira 12 ribu tandatangan digital, yang mengambil masa lebih daripada 14 jam. Alat yang digunakan untuk melakukan serangan Cachegrab.

Punca utama masalah ialah perkongsian komponen perkakasan biasa dan cache untuk pengiraan dalam TrustZone dan dalam sistem utama - pengasingan dilakukan pada tahap pemisahan logik, tetapi menggunakan unit pengkomputeran biasa dan dengan jejak pengiraan dan maklumat tentang cawangan alamat yang disimpan dalam cache pemproses biasa. Menggunakan kaedah Prime+Probe, berdasarkan penilaian perubahan dalam masa capaian kepada maklumat cache, adalah mungkin, dengan menyemak kehadiran corak tertentu dalam cache, untuk memantau aliran data dan tanda pelaksanaan kod yang berkaitan dengan pengiraan tandatangan digital dalam TrustZone dengan ketepatan yang agak tinggi.

Kebanyakan masa untuk menjana tandatangan digital menggunakan kekunci ECDSA dalam cip Qualcomm dibelanjakan untuk melakukan operasi pendaraban dalam gelung menggunakan vektor permulaan yang tidak berubah untuk setiap tandatangan (duta paus). Jika penyerang boleh memulihkan sekurang-kurangnya beberapa bit dengan maklumat tentang vektor ini, ia menjadi mungkin untuk melakukan serangan untuk memulihkan keseluruhan kunci peribadi secara berurutan.

Dalam kes Qualcomm, dua tempat di mana maklumat tersebut dibocorkan telah dikenal pasti dalam algoritma pendaraban: semasa menjalankan operasi carian dalam jadual dan dalam kod pengambilan data bersyarat berdasarkan nilai bit terakhir dalam vektor "nonce". Walaupun fakta bahawa kod Qualcomm mengandungi langkah-langkah untuk mengatasi kebocoran maklumat melalui saluran pihak ketiga, kaedah serangan yang dibangunkan membolehkan anda memintas langkah-langkah ini dan menentukan beberapa bit nilai "nonce", yang cukup untuk memulihkan kunci ECDSA 256-bit.

Sumber: opennet.ru

Tambah komen