Rumah Jam keamanan Peneliti Cina melaporkan serangan android trojan tersembunyi baru

Peneliti Cina melaporkan serangan android trojan tersembunyi baru

Video: Dahsyatnya Serangan Siber Virus Malware Wannacry (Desember 2024)

Video: Dahsyatnya Serangan Siber Virus Malware Wannacry (Desember 2024)
Anonim

Melakukan Trojanisasi pada aplikasi Android dengan menambahkan kode berbahaya sangat sederhana. Dengan menggunakan alat yang tersedia secara luas, siapa pun dapat mendekonstruksi file APK ke kode sumbernya, menambahkan modul jahat, mengubah beberapa izin, dan merekonstruksi aplikasi Trojan baru yang terlihat seperti yang lama. Namun, mendeteksi pelanggaran ini adalah masalah sederhana dengan memeriksa tanda tangan digital aplikasi. Pekan lalu, para peneliti dari BlueBox Security melaporkan apa yang mereka sebut kerentanan "kunci utama" -sebuah teknik untuk mem-Trojanizing aplikasi tanpa mengubah tanda tangan digital. Minggu ini seorang peneliti Cina melaporkan cara lain untuk menyembunyikan kode Trojan.

Tanda Tangan Digital Tidak Rusak

Inti dari menandatangani dokumen atau file secara digital adalah untuk membuktikan bahwa file tersebut belum dimodifikasi. Proses ini menggunakan bentuk kriptografi kunci publik. Anda menandatangani file secara digital dengan mengenkripsi file itu dengan kunci pribadi Anda. Fakta bahwa file terenkripsi dapat didekripsi menggunakan kunci publik Anda adalah bukti bahwa tidak ada gangguan. Seandainya BlueBox menemukan cara untuk benar-benar memodifikasi file tanpa mengubah tanda tangan digitalnya, itu akan menjadi pukulan mengejutkan bagi seluruh industri crypto. Tetapi mereka tidak melakukannya.

BlueBox akan melaporkan rincian lengkap penelitian mereka di konferensi Black Hat dalam beberapa minggu. Namun, peneliti ViaForensics Pau Oliva Fora telah memposting bukti kode konsep yang menggambarkan pendekatan yang diambil.

Sebenarnya, ini sangat, sangat sederhana. File APK dikemas menggunakan versi algoritma pengarsipan ZIP yang tersebar luas. Sebagian besar implementasi ZIP tidak akan mengizinkan dua file dengan nama yang sama dalam satu arsip, tetapi algoritme itu sendiri tidak melarang kemungkinan itu. Saat memeriksa tanda tangan digital aplikasi, OS Android melihat file yang cocok pertama, tetapi ketika benar-benar mengeksekusi dan meluncurkan file, itu mengambil yang terakhir . Untuk mem-Trojanize suatu aplikasi, yang perlu Anda lakukan hanyalah memasukkan kode jahat Anda ke dalamnya menggunakan nama yang sudah ada dalam aplikasi tersebut. Demonstrasi Fora hanyalah beberapa lusin baris kode Java.

Serangan Struktural Lainnya

Seorang peneliti Cina yang menulis blog sebagai Android Security Squad menemukan demonstrasi itu menarik dan mencari cara lain untuk menumbangkan proses verifikasi. Membaca posting yang diterjemahkan Google agak sulit, tetapi tampaknya serangannya bergantung pada konsep tingkat Ilmu Komputer 101.

Program komputer menyimpan angka penghitungan dalam koleksi bit ukuran tetap. Misalnya, dengan delapan bit Anda dapat mewakili angka dari 0 hingga 255. Jika perlu untuk mewakili angka negatif, konvensi lama adalah bahwa bit paling kiri menunjukkan angka negatif. Dengan delapan bit, maka, Anda juga bisa mewakili angka dari -128 hingga 127. Angka biner 11111111 mewakili 255 atau -1, tergantung pada apakah itu dimaksudkan sebagai angka yang tidak ditandatangani atau ditandatangani.

Android Security Squad meneliti format header file APK dan menemukan bidang data yang dianggap sebagai offset positif, tetapi disimpan sebagai integer yang ditandatangani. Memaksa bidang ini ke nilai negatif tertentu menyebabkan pemuat APK menjalankan kode berbahaya, bukan kode yang ditandatangani secara digital. Oke, ini sedikit lebih rumit, tapi begitulah cara kerjanya.

Tetap Dengan Google Play

Tak satu pun dari peretasan ini benar-benar merongrong mekanisme tanda tangan digital Android. Sebaliknya, mereka berdua memanfaatkan kebiasaan dalam struktur APK untuk membuat tanda tangan digital tidak relevan. Juga, tidak satu pun dari mereka akan memungkinkan aplikasi Trojanized untuk menyelinap melewati analisis Google. Google secara khusus memperbarui Google Play untuk memfilter aplikasi yang di-Trojanized menggunakan serangan "master key"; bahkan tanpa langkah itu, keamanan standar hampir pasti akan memblokir kedua jenis aplikasi Trojanized.

Pelajarannya jelas. Selalu dapatkan aplikasi Anda dari sumber yang sah, selalu periksa untuk memastikan nama pengembangnya valid, dan konfigurasikan ponsel Anda sehingga tidak mengizinkan pemasangan aplikasi dari "sumber yang tidak dikenal." Perhatikan izin mana yang diminta aplikasi, dan siap untuk membatalkan instalasi yang tampak mencurigakan. Jika operator Anda menawarkan pembaruan Android, selalu instal. Itu hanya akal sehat!

Peneliti Cina melaporkan serangan android trojan tersembunyi baru