msfvenom是kali linux下一个可以产生自定义payload的程序,接下来我们利用msfvenom产生一个新的win7下的计算器后门程序,利用windows/meterpreter/reverse_tcp来对目标靶机windows7进行控制。
1.msfvenom的基本用法:
可以看到一些常用的选项:
Options: -p, --payload <payload> 指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用'-'或者stdin指定 -l, --list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all -n, --nopsled <length> 为payload预先指定一个NOP滑动长度 -f, --format <format> 指定输出格式 (使用 --help-formats 来获取msf支持的输出格式列表) -e, --encoder [encoder] 指定需要使用的encoder(编码器) -a, --arch <architecture> 指定payload的目标架构 --platform <platform> 指定payload的目标平台 -s, --space <length> 设定有效攻击荷载的最大长度 -b, --bad-chars <list> 设定规避字符集,比如: '\x00\xff' -i, --iterations <count> 指定payload的编码次数 -c, --add-code <path> 指定一个附加的win32 shellcode文件 -x, --template <path> 指定一个自定义的可执行文件作为模板 -k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行 --payload-options 列举payload的标准选项 -o, --out <path> 保存payload -v, --var-name <name> 指定一个自定义的变量,以确定输出格式 --shellest 最小化生成payload -h, --help 查看帮助选项 --help-formats 查看msf支持的输出格式列表
2.利用msfvenom生成后门程序:
先将win7上原来有的计算器程序拷贝到kali上
然后按照选项,将windows/meterpreter/reverse_tcp这个payload附加到calc.exe之上,生成一个新的backdoor.exe,还要设置好监听地址,这里是192.168.1.136;设置好监听端口(LPORT=4444),并使用x86/shikata_ga_nai这种编码方式。生成新的后门程序:
并将后门程序设置为可以作为执行文件执行:
3.进入msfconsole进行监听:
之后的工作就是进行msfconsole在4444号端口进行持续监听,等待靶机执行后门程序然后反馈给windows/meterpreter/reverse_tcp获取权限:
4.靶机执行后门程序:
之后如果靶机执行了kali发给他的后门程序,就会反馈到kali上获得一个shell,从而就完成对靶机的渗透: