Malware Forensics

Saat ini malicious software atau malware merupakan alat yang paling efisien untuk berkompormi dengan keamanan dari komputer atau device elektronik lainnya yang terhubung melalui internet. Dengan menggunakan malware yang telah menginfeksi komputer maka bisa dihasilkan hingga kontrol penuh pada komputer tersebut. Aplikasi yang termasuk malware contohnya viruses, worms, trojans, rootkits, adware, dan spyware. Aplikasi tersebut memungkinkan untuk menghapus files, membuat kinerja komputer menurun, pencurian informasi pribadi, pengiriman spam, dan melakukan penipuan. Malware sangat berbahaya jika mampu masuk ke dalam sistem. Untuk dapat menghadapinya tentu perlu diketahui komponen-komponen malware, yaitu:

  1. Crypter : menghindari deteksi antivirus
  2. Downloader : tipe Trojan yang mendownload malware lain
  3. Dropper : mengandung kode malware yang tidak dapat dipindai antivirus
  4. Exploit : kumpulan kode yang mengeksploitasi kelemahan yang ada
  5. Injector : menyuntikkan kode ke area yang memiliki vulnerability
  6. Obfuscator : menyembunyikan kode malicious dengan berbagai teknik
  7. Packer : mengubah malware menjadi format yang tidak dapat dibaca oleh komputer
  8. Payload : perform dari malware yang diinginkan ketika komputer aktif
  9. Malicious Code : kode jahat yang biasanya ditulis dengan bahasa Java misalnya
  10. Fileless Malware : malware yang menginfeksi sistem tanpa menggunakan file
Komponen malware saling mendukung untuk membentuk malware yang powerful. Ada beberapa teknik yang dilakukan pelaku untuk mendistribusikan malware seperti blackhat SEO atau SEO tidak etik, pembajakan melalu rekaya klik dengan social engineered, situs yang seolah dari lembaga resmi, disisipi di iklan, berkompromi dengan website yang terlegitimasi, download software dari internet, redirect ke lokasi lain dari website, dan melalui mouse hovering pada hyperlinked text atau foto dengan malware.

Untuk melakukan analisis pada malware diperlukah kehati-hatian karena jika salah dalam melakukannya justru perangkat yang digunakan akan terinfeksi malware tersebut. Alat yang dapat mendukung seperti Hypervisors (Virual Box, Parallels Desktop, VMware vSphere Hypervisor), Network and Internet Simulation Tools (NetSim, ns-3, Riverbed, QualNet), Screen Capture (Snagit, Camtasia, Ezvid), dan OS Backup (Genie Backup Manager, Macrium Reflect Server, R-Drive Image, O&O DiskImage 16). Nah, dalam melakukan analisis malware ada 2 tipe, yaitu statik (analisis dilakukan tanpa mengeksekusi kode) dan dinamik (analisis dilakuan dengan mengeksekusi kode untuk melihat dampak malware terhadap sumber daya sistem dan jaringan).

sumber: https://pixabay.com/photos/computer-virus-hacker-4282378/

Untuk menganalisis malware secara statik atau tanpa melakukan instalasi malware ada beberapa cara seperti file fingerprinting (perhitungan dari kriptografi yang ter-hash pada kode biner), online malware scanning (setelah hash didapatkan maka nilai hash tersebut dapat dilakukan komparasi di database malware secara online), performing strings search (mencari string yang tertanam di file), identifying packing or obfuscation methods (penyerang biasanya menggunakan struktur yang acak untuk menghindari deteksi), finding the portable executables information (menemukan PE format yang menyimpan metadata sehingga bisa menemukan informasi lebih detail), identifying file dependencies (biasanya malware berjalan dengan dependencies tertentu), dan malware disassembly (menemukan bahasa yang digunakan serta API yang mengungkapkan function).

Sedangkan menganalisis malware secara dinamis atau dengan melakukan instalasi malware dan memperhatikan dampak yang diberikan pada sistem memiliki 2 pendekatan, yaitu monitoring host integrity dan observing runtime behavior. Yang dimaksud dengan monitoring host integrity adalah proses untuk mempelajari perubahan yang terjadi setelah aksi atau insiden terjadi. Caranya dengan mengambil snapshot dari sistem sebelum dan sesudah eksekusi dari malicious specimen dan tentu saja menggunakan alat yang sama. Sedangkan yang dimaksud observing runtime behavior adalah pemantauan aktivitas berbahaya pada sistem yang sedang berjalan dengan tujuan mengetahui bagaimana sistem dan jaringan berinteraksi secara real-time.

Perilaku yang perlu diperhatikan dalam analisis forensik malware ada 2, yaitu perilaku dari sistem dan perilaku dari jaringan. Area-area yang perlu diperhatikan pada sisi sistem operasi windows seperti registry, process, windows service, startup program, windows event logs, API calls, dan device drivers. Memang diperlukan ketelitian untuk melihat perubahan yang terjadi. Sedangkan pada jaringan, area-area yang perlu diperhatikan seperti IP addresses, port, dan dns. Namun, untuk mempelajari aktivitas yang dilakukan malware sungguh membutuhkan pemahaman yang baik. Sebab sering kali function tidak berada di malware tersebut melainkan malware dipanggil dari luar sistem. Nah, function yang tidak diketahui ini tentu hanya dapat dipelajari dari interaksi yang diberikan antara sistem dan jaringan serta akibatnya pada sistem.




ref:
ec-council

Komentar