Informasi yang berbeda pada perangkat asli dan emulator yaitu deviceID, nomor telephone, IMEI dan IMSI. Tidak sulit untuk mendapatkan informasi layanan telephone tersebut dengan memanfaatkan class android.OS.TelephonyManager.
Terdapat metod didalam class ini yang digunakan untuk menentukan layanan telephone, mengakses informasi-informasi pelanggan dan mendaftarkan listener untuk menerima notifikasi perubahan keadaan telephone.
Sebagai contoh, malware menggunakan getLine1Number untuk mendapatkan nomor telephone pada saluran 1. Pada emulator nilainya akan 1555521 dan diikuti port nomor. Terdapat juga method getSimOperatorName dan getSimCountryIso unuk mengecek informasi yang tedapat pada telephone.
2. Memeriksa Build Info.
Dengan memeriksa build info, malware akan memastikan jika dirinya dijalankan melalui emulator atau tidak. Pemeriksaan informasi ini hanya dilakukan ketika malware aktif atau proses booting. Berikut contoh build info :
3. Memeriksa properti sistem.
Umumnya properti sistem pada emulator akan berbeda dengan perangkat asli. Sebagai contoh merek perangkat, hardware dan model.
4. Memeriksa file terkait dengan emulator.
Teknik ini juga ditemukan pada banyak malware android dengan memeriksa keberadaan QEMU (Quick Emulator) atau file emulator lain.
5. Memeriksa debugger dan instaler.
Teknik ini bukanlah anti emulator namun mampu membuat penganalisan secara dinamis tidak berjalan. Dengan mengunakan perintah Debug.isDebuggerConnected() dan Debug.waitingForDebugger(), malware dapat mengetahui jika dirinya sdang di-debug oleh aplikasi debugger. Bahkan, malware mengecek jika dirinya diinstal menggunakan google play. Apabila malware diinstal dengan adb maka malware akan meolak untuk aktif.
6. Bom Waktu.
Dengan menunda atau membuat delay pada instruksi yag akan dijalakan, emulator dapat melewati penganalisaan sehigga malware tidak terdeteksi oleh antivirus. Setelah proses instalasi, malware tidak akan memulai aktifitasnya, misalnya menampilkan banner sehina pengguna pun tidak akan curiga dengan aplikasi jahat yang sebenarnya telah terinstal di perangkat.
Parameter firstAdDelay merupakan satuan milidetik sebagai patokan waktu kapan iklan akan dimunculkan, dalam kasus ini yaitu 24 jam. Penguna pun menganggap aplikasi yang dijalankan bersifat normal.
Malwae android terus berevolusi dan teknik anti emulasi pun semakin berkembang untuk mendeteksi emulator agar tidak muah terdeteksi oleh antivirus.
Sumber Majalah PC Media 2017.