IIS PUT写权限利用演示

无聊日一个站的时候发现shell传上去但是403,但是运气爆棚,大荣神告诉我这个这站有iis put 写权限,果断用WVS扫一个下,扫出好多目录都有写权限。

先科普一下:

目前大家所见到的IIS写权限利用,其实说白了是菜鸟管理员对IIS的错误配置问题(2个错误配置造成):
1.WEB服务器扩展里设置WebDAV为允许;
2.网站权限配置里开启了写入权限。

至于WebDAV,看看百度百科的介绍:

WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议.它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可直接对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。

很多微软自带的客户端工具可以发布与管理Web上的资源,就是通过WebDAV了;但是,正常的Web网站一般情况下是用不到的,因此,一般情况下根本没有必要允许WebDAV。
至于写权限,大家都明白,写权限就是允许PUT,与网站自身运行的权限无丝毫联系,如果开启了,那就是没有一点安全意识了。

这个问题本质上是一个配置错误。已经出来很多年了。现在不太常见了。

  1. web服务扩展的webDAV扩展要开启。
  2. 主目录里的权限要给写入权限,和脚本资源访问权限(没有脚本访问权限,可以利用iis解析漏洞)。 3.匿名用户要给写权限和修改权限。

图示如下:

ps://raw.github.com/litsand/litsand.github.com/master/_posts/pic/webdav.png" />

测试过程

使用桂林老兵的写权限利用工具和winsock expert抓包分析。

如果服务器没有开webdav扩展,put请求返回501 not implemented ,如果开了webdav,目录没有给写入权限,返回403 forbidden,如果目录有写入权限,用户没有给写权限,返回 401 unauthorized,如果条件都满足,返回201 created,表明文件成功上传。如果文件已经存在,则更新文件,返回 200.

利用思路

  • 上传txt,move改名为asp或者利用iis的解析漏洞。

一次完整攻击的日志记录

2013-06-20 03:02:30 W3SVC1 192.168.100.22 PUT /yanshi.txt - 80 - 192.168.100.33 - 201 0 0 2013-06-20 03:02:49 W3SVC1 192.168.100.22 MOVE /yanshi.txt - 80 - 192.168.100.33 - 201 0 0 2013-06-20 03:03:23 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:03:23 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:03:31 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:03:33 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:03:58 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:03:59 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:04:00 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:04:00 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0 2013-06-20 03:04:03 W3SVC1 192.168.100.22 POST /yanshi.asp - 80 - 192.168.100.33 Mozilla/5.0+(Windows;+Windows+NT+5.1;+en-US)+Firefox/3.5.0 200 0 0

先通过put方法上传文件,然后使用move方法修改文件名。之后post数据跟webshell交互。检测到put跟move方法,就可以判断为上传木马的尝试,是否成功需要看服务器返回的状态码。

207 Multi-Status

关于move操作的时候返回207 的问题,参考资料里有提到。解决方案就是利用iis的解析漏洞。经过一番测试发现,之所以会出现这个问题,是由于服务器的配置问题。如果目录权限没有给脚本资源访问的权限,那么会返回207 同时body里面会说明是 403 forbidden,可以通过iis的解析漏洞解决。还有一种情况是匿名用户没有文件修改权限,这是body里说明是401 unauthorized,这种情况就没有办法了。

时间: 2024-09-20 00:39:03

IIS PUT写权限利用演示的相关文章

iis8中写权限和脚本资源访问权限在哪里设置

问题描述 iis8中写权限和脚本资源访问权限在哪里设置 iis6中可以设置虚拟目录或应用程序的"写权限"和"脚本资源访问权限",ii8在哪里设置这两个权限呢?

数据库写权限出错哪里可以开启啊

问题描述 数据库写权限出错哪里可以开启啊 数据库写权限出错哪里可以开启啊fajks加入数据库可以启动了http://www.abc166.com[数据问题处理数据库写入权限](http://www.abc166.com "") 解决方案 数据库执行的时候没有权限可以对应的给使用的用户加上这个权限就好了啊. 还有你后边跟的这个网址浏览器弹出警告了~~ 解决方案二: 首先要说明一下是什么数据库 然后再看看需要什么权限 无非就是GRANT权限上去.

并发-HDFS能支持异步IO写来利用分布式的好处吗?

问题描述 HDFS能支持异步IO写来利用分布式的好处吗? 一个程序,可能同时打开几千甚至上万个文件写到HDFS文件系统里面,如果顺序来写的话,完全无法得到分布式文件系统的好处.但我没看到HDFS API里有异步写的接口. 当然可能用线程来实现并发,但同时开几千个线程,恐怕操作系统受不了吧. 解决方案 分布式Spark可以直接对HDFS进行数据的读写,同样支持Spark on...和Hive的兼容性 解决方案二: (1)你的计算机上此刻运行着超过1000个线程,这很正常 (2)基于存储系统的物理构

iis 权限-IIS部署环境权限问题。。。

问题描述 IIS部署环境权限问题... 早就听说IIS的尿性,这次配置WIN2008R2的IIS,发现怎么添加配置IUSER帐号的权限都没有用,但目录下默认的USER组权限竟然生效.实在无语言,然道IIS安装好后,不需要添加任何权限,只需要目录有USER权限组就可以了吗? 但是USER权限明显比IUSER用户要危险,请问大大们这种情况怎么解决? 解决方案 IIS7.0权限问题 解决方案二: iis,我也失败了,顶一下吧 解决方案三: 自己配置程序池的标志为另外一个用户,访问网站的物理凭证用户也另

用批处理实现IIS下最小权限的分配_服务器

随着Server 2008越走越近,很多用户又一次关注IIS的安全问题,笔者整理介绍在IIS下最小权限分配的批处理文件-- 复制代码 代码如下: @echo off  echo "权限设定"  echo "删除C盘的everyone的权限"  cd/  cacls "%SystemDrive%" /r "everyone" /e  cacls "%SystemRoot%" /r "everyone

destoon安全设置中需要设置可写权限的目录及文件_php实例

以destoonV4.0系统为例: about/ announce/ file/ config.inc.php index.html 以上目录或文件必须正确设置可写权限,且设置目录可写时,必须包含所有子目录及子文件,否则可能引起系统功能无法正常使用. 安装目录install在完成安装之后,系统会尝试销毁安装文件,但可能因为权限文件而无法销毁,建议ftp删除install目录. 升级目录upgrade在完成升级之后,系统会尝试销毁升级文件,但可能因为权限问题而无法销毁,建议ftp删除upgrade

visual studio-哪位写过利用VS和qt写出坐标轴,并可以画图的程序在?求助啊,很急,谢谢了

问题描述 哪位写过利用VS和qt写出坐标轴,并可以画图的程序在?求助啊,很急,谢谢了 哪位写过利用VS和qt写出坐标轴,并可以画图的程序在?求助啊,很急,谢谢了

批处理添加iis wpg、users对IIS的访问权限

原文 批处理添加iis wpg.users对IIS的访问权限 上一篇,我们学习了如何使用批处理删除各种帐户在IIS中的访问权限.下面,我们来看看,如何通过批处理添加iis_wpg.users对IIS的访问权限. ①添加iis_wpg的访问权限 cacls "%SystemRoot%" /g iis_wpg:r /e  cacls "%SystemDrive%/Program Files/Common Files" /g iis_wpg:r /e cacls &quo

多站点IIS用户安全权限设置图解教程_win服务器

一.这样配置的好处? 不知大家有没有听过旁注?我简单的解释一下吧:有个人想黑掉A站点,但找来找去都没发现可利用的漏洞,无意中他发现与A同服务器上还有个B站点,并且在B站点上找到了可利用的漏洞,于是他将木马从B站中上传至服务器,如果服务器权限配置不当,那么现在他就可以黑掉服务器上的所有站点了!如果我们为每个站点都建立一个用户,并设置该用户只有访问本站点的权限,那么就能将访问权限控制在每个站点文件夹内,旁注问题也就解决了. 二.准备工作 1.运行环境:Win2K 服务器版 + IIS 5.02.文件