Karena bootloader biasanya closed source dan sulit untuk melakukan reverse-engineer atau sukar untuk di analisa terutama karena ketergantungan hardware yang menghambat analisa dinamik. Oleh karena itu, para peneliti menciptakan BootStomp, yang "menggunakan kombinasi teknik analisis statis dan eksekusi simbolis yang tidak terikat untuk membangun analisis multi-tag yang dapat mengidentifikasi kerentanan bootloader."
Alat ini membantu para peneliti keaman menemukan enam bug kritis yang sebelumnya tidak diketahui di antara perangkat bootloader dari HiSilicon (Huawei), Qualcomm, MediaTek, dan NVIDIA, yang dapat dimanfaatkan oleh penyerang untuk membuka perangkat bootloader, menginstal ROM berbahaya dan rootkit. Lima dari kerentanan tersebut telah dikonfirmasi oleh vendor chipset masing-masing. Para peneliti juga menemukan bug yang diketahui (CVE-2014-9798) di bootloader Qualcomm, yang sebelumnya dilaporkan pada tahun 2014, namun masih ada dan masih dipergunakan oleh penyerang.
Dalam sebuah makalah penelitian [PDF], berjudul "BootStomp: On the Security of Bootloaders in Mobile Devices," yang dipresentasikan pada konferensi USENIX di Vancouver, para peneliti menjelaskan bahwa beberapa kelemahan yang ditemukan bahkan memungkinkan penyerang dengan hak istimewa root pada sistem operasi Android mengeksekusi kode berbahaya untuk melakukan serangan denial-of-service permanen.
Menurut para peneliti, kerentanan tersebut mempengaruhi mekanisme ARM's "Trusted Boot" atau mekanisme Android's "Verified Boot" yang telah ditetapkan vendor chip untuk membentuk Chain of Trust (CoT), yang memverifikasi integritas setiap komponen yang dimuat sistem saat pada booting perangkat. Para peneliti menguji lima implementasi bootloader yang berbeda pada Huawei P8 ALE-L23 (Huawei / HiSilicon chipset), Nexus 9 (NVIDIA Tegra chipset), Sony Xperia XA (MediaTek chipset) dan dua versi bootloader berbasis LK, yang dikembangkan oleh Qualcomm.
Peneliti menemukan lima kelemahan penting dalam bootloader Huawei Android:
- Arbitrary memory write atau denial of service (DoS) ketika parsing Linux Kernel’s DeviceTree (DTB) yang tersimpan dalam partisi boot.
- Masalah buffer overflow saat membaca partisi oem_info root-writable.
- Kemampuan pengguna root untuk menulis partisi nve dan oem_info, dari data konfigurasi dan izin akses memori yang mengatur periferal smartphone.
- Masalah korupsi memori yang memungkinkan penyerang menginstal rootkit.
- Arbitrary memory write bug yang memungkinkan penyerang menjalankan kode sewenang-wenang sebagai bootloader.
0 comments:
Post a Comment
Click to see the code!
To insert emoticon you must added at least one space before the code.