IIS-PUT 漏洞复现


0x001 漏洞原理


  WebDAV (Web-based Distributed Authoring and Versioning) 是一种HTTP1.1的扩展协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。可以像在操作本地文件夹一样操作服务器上的文件夹,该扩展也存在缺陷,可以被恶意攻击者利用,直接上传恶意文件。

0x002 漏洞利用


  该漏洞的产生原因来源于服务器配置不当造成,利用IIS PUT Scaner扫描有漏洞的IIS,此漏洞主要是因为服务器开启了WebDAV的组件导致的可以扫描到当前的操作,具体操作其实是通过WebDAV的OPTIONS来查询是否支持PUT。

0x003 演示环境


在VMare软件里安装好 Windows 2003 R2 虚拟机,并搭建好 IIS 服务。

开启WebDAV选项

开启IIS网站写入权限

设置允许来宾用户控制权限

0x004 漏洞复现


首先,打开 IIS PUT Scaner 工具进行扫描,显示YES,表示检测到了漏洞。

然后,使用 桂林老兵 IIS Write 工具,上传webshell到服务器。

首先上传一个txt文件,上传之后再重命名为asp文件。

选择PUT上传webshell,这里后缀为txt,然后提交数据包

在目标网站下会生成一个shell.txt的文件,但是这个文件是无法被IIS解析的

接下来利用MOVE将txt的文件修改为asp的,从而可以将文件变成可执行的脚本文件

最后使用冰蝎工具进行连接getShell测试成功。

getShell

0x005 修复方案


  1. 禁用WebDAV选项。
  2. 如果要使用WebDAV的话,加上权限验证。

参考文章


文章作者: LuckySec
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 LuckySec !
评论
  目录