idNSA.id - Peneliti Check Point menemukan vulnerability ini saat
menganalisis sistem pembayaran yang terpasang pada smartphone Xiaomi yang
ditenagai oleh chip MediaTek.
Trusted execution environment (TEE) adalah komponen penting
perangkat seluler yang dirancang untuk memproses dan menyimpan informasi
keamanan sensitif seperti kunci kriptografik dan sidik jari.
Perlindungan TEE memanfaatkan ekstensi perangkat keras
(seperti ARM TrustZone) untuk mengamankan data di enklave ini, bahkan pada
perangkat atau sistem yang di-root yang disusupi oleh malware.
Implementasi TEE yang paling populer adalah Secure Execution
Environment (QSEE) dari Qualcomm dan Kinibi dari Trustronic, tetapi sebagian
besar perangkat di pasar Asia yang lebih luas ditenagai oleh chip MediaTek,
yang kurang dieksplorasi oleh pakar keamanan.
Para ahli menjelaskan bahwa pada perangkat Xiaomi, aplikasi
tepercaya disimpan di direktori /vendor/thh/ta. Aplikasi dalam format file
biner tidak terenkripsi dengan struktur tertentu.
Aplikasi tepercaya dari OS Kinibi memiliki format MCLF,
sementara Xiaomi menggunakan formatnya sendiri. Aplikasi tepercaya dapat
memiliki banyak signature yang mengikuti magic field dan magic fieldnya sama di
semua aplikasi tepercaya di perangkat seluler.
Para peneliti memperhatikan bahwa bidang kontrol versi
dihilangkan dalam format file aplikasi tepercaya, ini berarti penyerang dapat
mentransfer versi lama dari aplikasi tepercaya ke perangkat dan menggunakannya
untuk menimpa file aplikasi baru. Dengan menggunakan trik ini, TEE akan memuat
aplikasi yang ditransfer oleh penyerang.
“Oleh karena itu, penyerang dapat melewati perbaikan keamanan
yang dibuat oleh Xiaomi atau MediaTek di aplikasi tepercaya dengan menurunkan
versinya ke versi yang belum ditambal. Untuk membuktikan masalah ini, kami
berhasil menimpa aplikasi tepercaya thhadmin pada perangkat pengujian kami yang
menjalankan MIUI Global 12.5.6.0 OS dengan yang lama diekstraksi dari perangkat
lain yang menjalankan MIUI Global 10.4.1.0 OS.” membaca analisis yang
diterbitkan oleh peneliti Check Point "Aplikasi thhadmin lama berhasil
diluncurkan, meskipun kodenya sangat berbeda dari aslinya."
Para ahli juga menemukan beberapa kelemahan dalam aplikasi
"thhadmin," yang dapat dieksploitasi untuk membocorkan kunci yang
disimpan atau untuk mengeksekusi kode berbahaya dalam konteks aplikasi.
Peneliti Check Point telah menganalisis kerangka pembayaran
seluler yang disematkan, bernama Tencent Soter, yang digunakan oleh perangkat
Xiaomi. Framework ini menyediakan API untuk aplikasi Android pihak ketiga untuk
mengintegrasikan kemampuan pembayaran. Tencent soter memungkinkan untuk
memverifikasi paket pembayaran yang ditransfer antara aplikasi seluler dan
server backend jarak jauh, didukung oleh ratusan juta perangkat Android.
Kerentanan heap overflow di aplikasi tepercaya Soter dapat
dieksploitasi untuk memicu penolakan layanan oleh aplikasi Android yang tidak
memiliki izin untuk berkomunikasi dengan TEE secara langsung.
Para peneliti menunjukkan bahwa mungkin untuk mengekstrak key
private yang digunakan untuk menandatangani paket pembayaran dengan mengganti
aplikasi tepercaya dengan versi lama yang terpengaruh oleh kerentanan baca
sewenang-wenang. Xiaomi melacak masalah tersebut sebagai CVE-2020–14125.
“Kerentanan ini [CVE-2020–14125] dapat dieksploitasi untuk
mengeksekusi kode khusus. Aplikasi tepercaya Xiaomi tidak memiliki ASLR. Ada
contoh di Internet yang mengeksploitasi kerentanan heap overflow klasik di
aplikasi Kinibi. Dalam praktiknya, tujuan kami adalah mencuri salah satu kunci
pribadi yang lebih baik, bukan mengeksekusi kodenya. Kebocoran kunci
benar-benar membahayakan platform soter Tencent, memungkinkan pengguna yang
tidak sah menandatangani paket pembayaran palsu.” Kesimpulan laporan.
“Untuk mencuri key, kami menggunakan kerentanan pembacaan
arbitrer lain yang ada di versi lama soter aplikasi (diekstrak dari MIUI Global
10.4.1.0). Seperti yang disebutkan, kami dapat menurunkan versi aplikasi di
perangkat Xiaomi.” Xiaomi mengatasi kerentanan CVE-2020-14125 pada 6 Juni 2022.