Simple Static Malware Analysis, apa itu?

Apa itu simple static malware analysis?

Ternyata sudah selama 1 tahun 4 bulan dan 8 hari sejak terakhir saya posting sesuatu di blog ini, lama juga…

Well, saatnya mulai menulis lagi, dari yang simple terlebih dahulu.

Static Malware Analysis

Apa itu simple static malware analysis? menurut Dennis Distler(1), malware analysis dibagi menjadi 2 (dua) metode dasar yaitu static malware analysis dan dynamic malware analysis. Keduanya memiliki tujuan yang sama, bedanya hanya pada static malware analysis file malware tidak dijalankan melainkan diperiksa kodenya tanpa menjalankannya untuk memahami tingkah laku dan kode yang membangun file malware tersebut.

Mengapa saya memilih static malware analysis? dari pengalaman pribadi kebanyakan kasus adalah sebuah perangkat komputer terjangkit sebuah malware dan untuk mengetahui jenis malware apa yang menginfeksi diperlukan static malware analysis.

Pertama yang perlu dilakukan untuk melakukan static malware analysis adalah dengan melakukan dump memory (RAM), tools yang digunakan bisa dengan FTK Imager atau Volatility .

Berikut langkah-langkah selanjutnya yang perlu diperhatikan(2):

  1. File Fingerprinting
    Dimana kita melakukan proses hashing (MD5 atau SHAxxx) pada file dump memory yang telah kita lakukan sebelumnya.
  2. Virus Scanning
    Salah satu website yang sering dikunjungi para malware analyst adalah virustotal.com, disini terdapat banyak produk antivirus yang siap untuk menganalisa file mencurigakan yang kita upload.
  3. Analyzing memory artefacts (Pagefile.sys,hiberfile.sys)
    Dua file di OS Windows yang memiliki konten yang cukup untuk dilakukan analisis adalah Pagefile.sys (hidden file di folder %SystemDrive%\pagefile.sys) dan Hiberfile.sys (lokasinya di %SystemDrive%\hiberfile.sys)
  4. Packer Detection
    Malware yang bagus selalu dikaburkan filenya (obfuscated) dengan cara dibungkus oleh program packer. Untuk mendeteksi program packer yang digunakan agar kita dapat membongkar file malwarenya adalah PEiD.
  5. Disassembly
    Terakhir dilakukan disassembly atau debugging untuk mencari tahu file DLL (OS Windows) yang digunakan oleh file malware untuk dapat menginfeksi korbannya.

Dari langkah diatas memang diperlukan waktu yang cukup lama untuk mempelajari dan mempraktekkannya dalam sebuah malware analysis. Biasanya yang saya lakukan untuk melakukan static malware analysis di OS Windows secara cepat dan simple adalah dengan menggunakan tools ProcessExplorer dari SysInternal Microsoft. Tools ini sebenarnya mirip dengan Task Manager dari OS Windows, hanya saja dilengkapi dengan

Download ProcessExplorer pada link diatas, kemudian jalankan di perangkat yang telah terinfeksi atau terindikasi oleh malware. Seperti ini tampilannya:

      processexplorer1
Gambar 1. Tampilan ProcessExplorer.

Dari tampilan ProcessExplorer diatas kita perlu mencari sebuah Process, yang biasanya tidak memiliki “Company Name”, atau sebuah process yang memiliki child process (proses lain yang dijalankan oleh sebuah proses) yang sekiranya mencurigakan, biasanya penggunaan CPU atau RAM besar, selalu crash dsb.

processexplorer2

Gambar 2. Process MiPhoneHelper.exe

Kali ini kita mencoba process MiPhoneHelper.exe yang berasal dari aplikasi bawaan handphone Redmi milik istri saya. Klik kanan process tersebut kemudian klik “Check Virus Total”, setelah itu klik kanan dan pilih properties, tampilan selanjutnya adalah sebagai berikut:

processexplorer3

Gambar 3. ProcessExplorer Properties

Pada gambar diatas dapat kita lihat bahwa VirusTotal mendeteksi bahwa tidak ada (0) produk antivirus (dari 55 buah)  yang dapat mendeteksi process tersebut mengandung malware. Kita juga dapat melihat lokasi file tersebut di OS serta lokasi di Registry. Memudahkan untuk dilakukan pengambilan atau penghapusan file terduga malware. Selain itu ProcessExplorer dapat melihat beberapa hal seperti berikut:

  • TCP/IP
    Seharusnya file normal tidak akan melakukan koneksi keluar (internet) kecuali memang file tersebut memerlukannya. File malware saat ini banyak yang dikendalikan oleh sebuah program pada server C&C (Command Centre). Silahkan IP address yang muncul di menu ini diperiksa di IpVoid.com
    processexplorer4
    Gambar 4. Menu ProcessExplorer TCP/IP
  • Security
    Perhatikan disini biasanya malware melakukan privilege escalation (dari non administrator menjadi administrator), seharusnya file yang benar memiliki BUILTIN\Administrator dan NT AUTHORITY\Local account and member of Administrator – Deny
    processexplorer5
    Gambar 5. Menu Security ProcessExplorer
  • Environment
    Disini kita dapat melihat lebih dekat file tersebut lokasinya ada dimana dan environment OS pada saat diperiksa. Malware biasanya merubah atau menambahkan pada Path atau PATHEXT
    processexplorer6
    Gambar 6. Menu Environment ProcessExplorer
  • Strings
    Ini adalah salah satu favorit saya untuk melihat strings (kata/rangkaian kata) pada sebuah file malware. Cari strings seperti perintah untuk menjalankan file *.bat atau file tidak berbentuk, bahkan kadang GET/POST dari HTTP request juga digunakan. Sekali lagi cari dan googling…

    simple static malware analysis

    Process Explorer

    Gambar 7. Menu Strings ProcessExplorer

 

Kadang ditemukan sebuah file malware yang hanya merupakan backdoor untuk mendownload file malware lain ke dalam OS. Selalu perhatikan segala hal yang mencurigakan dan cari di mbah google. Cara diatas sering saya gunakan ketika membantu teman atau melakukan simple static malware analysis, cepat dan cukup akurat. Selanjutnya mungkin akan saya bahas lebih lanjut mengenai static malware analysis atau dynamic malware analysis.

Semoga tulisan simple static malware analysis ini dapat bermanfaat bagi yang membutuhkannya, jangan lupa isi kolom dibawah jika ada yang ingin ditanyakan.

Terima kasih.

Salam,

iKONs

Referensi:

  1. Dennis Distler, Malware Analysis: An Introduction, SANS Institute, 2007