漏洞知识库
网络安全/渗透测试/代码审计/
关注
IIS – PUT 漏洞
IIS简介
iis是Internet Information Services的缩写,意为互联网信息服务,是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。
最初是Windows NT版本的可选包,随后内置在Windows 2000、Windows XP Professional和Windows Server 2003一起发行,但在Windows XP Home版本上并没有IIS。
IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。
Put漏洞造成原因
IIS Server在Web服务扩展中开启了
,配置了可以,造成。
实验环境搭建代码语言:javascript
代码运行次数: 0 运行 复制
VMware虚拟机选择的网络是.NET模式,或者桥接模式也可以!但前提必须让2003和物理机相互Ping通才可以!
有时候互相Ping不通可能是防火墙的原因,可以吧防火墙关闭就可以Ping通了
在这里我的物理机IP:
WIN2003的IP:
然后配置完IIS后我们用物理机访问WIN2003的IP看看能不能打开网页:
访问:http://192.168.119.133/
说明是可以访问到的(一切就绪)
需要用到的工具
IIS写权限的利用 – 桂林老兵:(工具下载链接在下方阅读全文)
IIS-PUT漏洞演示实战
首先来到Internet信息服务(IIS)管理器 – Web服务扩展:
可以看到WebDAV扩展是禁止的
我们首先来上传一个文件试试,看看能不能上传成功:
上传IIS写权限的利用工具的相对路径下的text.txt文件
选择PUT方式、域名填写WIN2003的IP地址、请求文件是相对路径下的text.txt文件:提交数据包:
代码语言:javascript
代码运行次数: 0 运行 复制
这个时候利用工具返回的数据包是
的状态码,从这个利用软件返回的结果说明没有成功
网站服务器里也没有上传成功
这个时候我们把WebDAV设置为允许、然后网站主目录下设置可写入权限:
这个时候就有可能照成任意文件上传,我们再来试试上传:
代码语言:javascript
代码运行次数: 0 运行 复制
这个时候就可以上传txt文件了!
当然有时候我遇到返回状态码为:401、400的,是因为网站主目录没设置给
权限才导致上传失败!
我们上传脚本文件asp试试:
代码语言:javascript
代码运行次数: 0 运行 复制
服务器看看上传成功没有:
很显然
没有成功上传上去
这个时候,利用工具有一个
方式,我们再上传木马上去试试:
代码语言:javascript
代码运行次数: 0 运行 复制
这个时候成功上传一句话木马到服务器!
漏洞修复建议
1:关闭WebDAV
2:关闭写入权限