Analisa dinamik malware

Pada tulisan sebelumnya saya sudah cerita tentang teknik deteksi malware yang digunakan oleh antivirus. Ada teknik scanning, static heuristic dan integrity check. Ketiga teknik tersebut dikelompokkan dalam metoda analisa statik (static analysis). Pada metoda statik, code malware tidak dijalankan (run).  Sekarang saya akan cerita tentang metoda analisa dinamik malware. Pada metoda ini, malware akan dijalankan pada sistem dan akan diobservasi.  Metoda ini dibagi lagi menjadi beberapa teknik. Diantaranya sebagai berikut :

1. Behaviour monitor & blocker

Pada teknik ini, anti virus akan melakukan monitoring malware secara real time. Bila anti virus menemukan aktifitas yang mencurigakan maka antivirus akan berusaha menghentikan program. Pada awalnya antivirus akan mendefinisikan dulu aktifitas yang normal berjalan pada sistem, selain itu antivirus juga memiliki beberapa kriteria aktifitas yang dicurigai sebagai Malware.  Kriteria mencurigakan ini didasarkan dari perilaku dan karakteristik malware yang sudah terdefinisi sebelumnya. Karakteristik ini biasanya dinamakan dynamic signature. Teknik ini mampu melakukan deteksi terhadap virus yang sudah diketahui maupun virus baru yang belum dada signaturenya. Kelemahannya adalah teknik ini bisa mendeteksi adanya virus, tapi tidak bisa melakukan identifikasi virus yang terdeteksi adalah virus apa, termasuk jenis apa dan tidak pula bisa melakukan tindakan (disinfeksi) seperti kuarantina dll. Selain itu tingkat false positive juga cukup tinggi. Kelemahan lainnya adalah run time overhead pada komputer cukup tinggi. Selain itu, malware dibiarkan menginfeksi sistem terlebih dahulu baru dideteksi.

computer-infection11
from http://blog.doohelp.com

2. Emulation

Teknik ini mirip dengan teknik behaviour blocker diatas, hanya saja malware tidak dijalankan pada sistem yang sebenarnya. Tapi malware dijalankan pada emulator dan diamati perilakunya.  Emulator merupakan sebuah sistem virtual yang dibuat menyerupai sistem aslinya. Keunggulan teknik ini adalah kita dapat mengamati perilaku malware tanpa membiarkan malware menginfeksi sistem yang sebenernya. Karena malware hanya kita jalankan pada emulator. Teknik ini juga bisa mendeteksi malware yang sudah kita ketahui maupun malware baru. Kelebihan lainnya adalah teknik ini bisa mendeteksi malware polymorphic. Kelemahannya adalah emulator biasanya lambat dan membutuhkan resource yang besar. Emulator juga tidak bisa 100% menjalankan semua fungsi dari sistem sebenarnya, sehingga bisa jadi malware tidak terdeksi pada emulator. Selain itu kalau sudah terdeteksi ada malware teknik ini juga kesulitan untuk melakukan identifikasi malware dan mengambil tindakan (disinfeksi).

Secara umum teknik analisa dinamik membutuhkan resource yang lebih besar sehingga membutuhkan run time overhead yang lebih tinggi. Tapi teknik ini memiliki kelebihan bisa mendeteksi teknik obfuscation (penyamaran) yang dibuat oleh pembuat malware untuk mengelabui analis malware.  Semoga bermanfaat!

Silahkan tuliskan tanggapan, kritik maupun saran