msfvenom参数简介

-p, –payload < payload> 指定需要使用的payload(攻击荷载)。也可以使用自定义payload,几乎是支持全平台的

-l, –list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all

-n, –nopsled < length> 为payload预先指定一个NOP滑动长度

-f, –format < format> 指定输出格式 (使用 –help-formats 来获取msf支持的输出格式列表)

-e, –encoder [encoder] 指定需要使用的encoder(编码器),指定需要使用的编码,如果既没用-e选项也没用-b选项,则输出raw payload

-a, –arch < architecture> 指定payload的目标架构,例如x86 | x64 | x86_64

–platform < platform> 指定payload的目标平台

-s, –space < length> 设定有效攻击荷载的最大长度,就是文件大小

-b, –bad-chars < list> 设定规避字符集,指定需要过滤的坏字符例如:不使用 'x0f''x00';

-i, –iterations < count> 指定payload的编码次数

-c, –add-code < path> 指定一个附加的win32 shellcode文件

-x, –template < path> 指定一个自定义的可执行文件作为模板,并将payload嵌入其中

-k, –keep 保护模板程序的动作,注入的payload作为一个新的进程运行

–payload-options 列举payload的标准选项

-o, –out < path> 指定创建好的payload的存放位置

-v, –var-name < name> 指定一个自定义的变量,以确定输出格式

–shellest 最小化生成payload

-h, –help 查看帮助选项

–help-formats 查看msf支持的输出格式列表

比如想查看windows/meterpreter/reverse_tcp支持什么平台、哪些选项,可以使用

msfvenom -p windows/meterpreter/reverse_tcp --list-options

 使用msfvenom --list payloads可查看所有payloads

 使用msfvenom --list encoders可查看所有编码器

可以看到评级最高的两个encoder为cmd/powershell_base64x86/shikata_ga_nai,其中x86/shikata_ga_nai也是免杀中使用频率最高的一个编码器了。

类似可用msfvenom --list命令查看的还有payloads, encoders, nops, platforms, archs, encrypt, formats

原文地址:https://www.cnblogs.com/yyxianren/p/12426904.html