Rumah Jam keamanan Topi hitam: beberapa kerentanan tombol master mempengaruhi android

Topi hitam: beberapa kerentanan tombol master mempengaruhi android

Video: GOD MODE UNLOCKED - Hardware Backdoors in x86 CPUs (Desember 2024)

Video: GOD MODE UNLOCKED - Hardware Backdoors in x86 CPUs (Desember 2024)
Anonim

Semuanya berawal sebagai lelucon, jelas Jeff Forristal dari Bluebox Security. Tim Bluebox ingin membuat versi yang diretas dari aplikasi FourSquare yang akan membuatnya tampak seperti Anda berada di tempat yang aneh, seperti Antartika. Sayangnya, Google Maps menolak permintaan dari aplikasi tweak. Mengejar cara mengatasi masalah itu membawa tim pada kelemahan yang mereka juluki "Master Key". "Topik ini sudah dibahas, " kata Forristall. "Itu bocor. Sudah keluar selama beberapa minggu. Tapi sebenarnya ada lebih dari satu kunci utama, jadi pembicaraan ini berkembang dari satu bug menjadi empat."

Forristal menjelaskan bahwa dengan membongkar, memodifikasi, dan memasang kembali aplikasi, mereka telah mengubah tanda tangan pengembangnya. Tanda tangan baru tidak dilisensikan untuk menggunakan Google Maps, jadi ditolak. Pencarian baru mereka; ubah kode tanpa mengubah tanda tangan.

Forristal berjalan melalui serangkaian peristiwa terperinci yang terjadi ketika Android memverifikasi aplikasi yang ditandatangani. Setiap lapisan memverifikasi yang sebelumnya, dimulai dengan memverifikasi bahwa model kode belum dirusak dan diakhiri dengan tanda tangan digital dari paket secara keseluruhan. Dia mencoba menyerang sistem di setiap tahap, sebagian besar tanpa keberuntungan.

"Format APK, JAR, dan ZIP pada dasarnya sama, " catat Forristal. "JAR dan APK hanya memiliki komponen tambahan." Keberhasilan terakhirnya meliputi meningkatkan format ZIP. Ketika ia menyisipkan file "jahat" dengan nama yang sama dengan file valid yang ada, verifier menandatangani pada file yang valid, tetapi file "jahat" diluncurkan.

Mengapa? Karena Android menggunakan kode manajemen file ZIP yang berbeda di pemverifikasi dan penginstal yang sebenarnya. "Perbedaan parsing file ZIP adalah sumber kesalahan ini, " jelas Forristal. "Faktanya, ada delapan implementasi parsing file ZIP terpisah di basis kode Android."

Keluar dari Sandbox

"Aku menggunakan trik ini untuk selamanya, " kata Forristal. "Sekarang mari kita buat itu menjadi luar biasa." Seperti iOS, Android menjalankan setiap aplikasi di kotak pasirnya sendiri, jadi aplikasi tidak dapat mengakses sumber daya milik aplikasi lain. "Satu-satunya jalan ke kotak pasir harus ditandatangani oleh pengembang yang sama, " jelasnya. "Itulah yang memungkinkan pembaruan."

"Sistem secara keseluruhan, menganut gagasan yang sama, " lanjutnya. "Sistem kotak pasir memberlakukan semua kotak pasir lainnya. Ia mengontrol semua pengaturan Anda. Ini bukan root, tetapi memiliki semua data, aplikasi, kata sandi, dan pengaturan Anda - apa yang tersisa? Sistem ini cukup kuat." Aplikasi yang mengakses kotak pasir sistem biasanya ditandatangani oleh pembuat platform. "Saya hanya perlu mendapatkan aplikasi yang ditandatangani platform dan melakukan trik kecil saya, dan saya harus memiliki akses tingkat sistem. Itu lebih keren daripada peta FourSquare, " pungkasnya.

Ternyata VPN pihak ketiga harus ditandatangani platform, dan sebagai bonus mereka sudah meminta akses ke kotak pasir sistem. Forristal menampilkan tiga perintah sederhana yang digunakannya untuk memasukkan kode "jahat" -nya ke VPN pihak ketiga, bercanda tentang "alat peretas über." Hasil? Trojan dengan akses tingkat sistem penuh.

Eksploitasi yang mudah

Ahli teknologi keamanan utama Saurik (Jay Freeman) membawa konsep ini ke tingkat selanjutnya, jelas Forristal. Alat Cydia Impactor miliknya berjalan pada OSX dan Windows dan mengotomatiskan exploit. "Hubungkan sebuah perangkat, " kata Forristal, "ia menemukan aplikasi yang tepat, membangunnya, menambahkan peretasan yang tepat untuk mendapatkan akses root, dan mengirimkannya. Saya akan merilis beberapa bukti kecil dari aplikasi konsep, tetapi ini luar biasa."

Forristal mencatat bahwa jenis prosesor perangkat tidak masalah. Serangan itu tidak terpengaruh oleh ASLR (Address System Layout Randomization) atau DEP (Data Execution Prevention). Dia membuat satu versi yang bekerja pada empat generasi Android, dan satu-satunya keterampilan nyata yang dibutuhkan adalah pengetahuan tentang Jawa. "Saya menyerahkan ini untuk Black Hat karena mudah dimengerti dan dieksploitasi, " kata Forristal.

Lebih Banyak Kunci Master

Forristal menjalankan sejumlah bug lain yang baru-baru ini ditemukan yang dapat dianggap "kunci utama". Ketika memeriksa kode untuk fitur yang disebut Atribut Otentikasi, peneliti Bluebox menemukan garis yang dikomentari dan ditandai "TODO." Sebagai hasil dari kode yang hilang, tidak peduli perubahan apa pun yang Anda lakukan, file tersebut lolos verifikasi. Tidak banyak file menggunakan fitur ini, catat Forristal. "Jika Anda menemukan satu, Anda dapat menyalin dan menempel file sertifikat dan mengambil identitas pengembang. Jika Anda menandatangani aplikasi dengan Atribut yang Diotentikasi, Anda telah menyerahkan identitas Anda." Karena bug ini diperbaiki sebelum Bluebox melaporkannya, mereka tidak menerima pujian.

Serangan "Trojan Tersembunyi" yang dilaporkan oleh seorang peneliti Tiongkok ternyata hanyalah salah satu dari beberapa cara yang mungkin untuk mengeksploitasi banyak parser file ZIP Android. Serangan-serangan ini memanfaatkan fakta bahwa satu pengguna parser menandatangani bilangan bulat dan yang lainnya menggunakan bilangan bulat yang tidak ditandatangani.

"Ini bahkan bukan tentang mengganti satu file, " pinta Forristal. "Anda dapat menggunakan trik ini untuk memberi makan dalam file ZIP yang sama sekali berbeda. Yang satu diverifikasi, yang lain berjalan. Beberapa trik dan informasi di ruang ini mungkin menunjukkan kekuatan yang lebih besar untuk pendekatan ini."

Meskipun malware yang menggunakan teknik ini sudah terlihat di alam liar, seharusnya tidak mungkin untuk mendapatkan file Trojanized seperti yang dijelaskan di sini ke Google Play. Anda mungkin akan aman jika selalu dan hanya menginstal aplikasi yang telah melewati pengawasan resmi. Namun, agar aman, pastikan untuk segera menginstal pembaruan Android yang tersedia.

Topi hitam: beberapa kerentanan tombol master mempengaruhi android