ASP漏洞及安全建议 (续一)
作者: 佚名 来源: 一亩三分地 点击: 日期: 2007-03-23
10、微软开发的两个动态库存在后门允许用户查看ASP文件源程序和下载整个网站
问题描述:
随IIS和Frontpage Extention server而来的动态库程序,存在后门,允许用户远程读取asp、asa和CGI程序的源代码。但这个动态库要求有密码,这个后门的密码是: "Netscape engineers are weenies!"
程序路径为: /_vti_bin/_vti_aut/dvwssr.dll
一般安装了 Frontpage98的 IIS服务器都有这个路径和文件。这个程序要求解码后才能发挥读取asp等源程序,有趣的是,这个密码正是嘲弄其竞争对手Netscape的。
现提供一个有该漏洞的国外网站给安全技术人员参考:
http://62.236.90.195
关于读取源程序,请下载这个测试程序,用法为:
[john@Linux john]$ ./dvwssr1.pl 62.236.90.195 /cqsdoc/showcode.asp
测试程序: http://www.cnns.net/exploits/nt/dvwssr1.pl
11、漏洞名称:IIS4.0受HTTP的D.O.S攻击漏洞
问题描述:
受影响的版本:IIS 4.0以及更早的版本
这是一个很简单的方法.发送很多的"Host:aaaaa...aa"到IIS:
GET / HTTP/1.1
Host: aaaaaaaaaaaaaaaaaaaaaaa....(200 bytes)
Host: aaaaaaaaaaaaaaaaaaaaaaa....(200 bytes)
...10,000 lines
Host: aaaaaaaaaaaaaaaaaaaaaaa....(200 bytes)
发送了象上面所写的两次请求后,对方的IIS在接受了这些请求后就会导致内存溢出.当然,它就不能对更多的请求作出反应。因为对方正缺乏虚拟内存,服务器也将停止运行。事后,对方不能通过重起web service来解决问题,而必须重启服务器。
12 漏洞名称:IIS5.0超长URL拒绝服务漏洞
问题描述:
Microsoft IIS 5.0在处理以".ida"为扩展名的URL请求时,它会有两种结果。一个可能的结果是服务器回复"URL String too long"的信息;或类似"Cannot find the specified path" 的信息。另一种可能就是服务器端服务停止,并返回"Access Violation"信息(即成功的实现了对服务器端的拒绝服务攻击)
当远端攻击者发出类似如下的请求时:
http://someurl/...[25kb of '.']...ida
服务器端会崩溃(导致拒绝服务攻击)或返回该文件不在当前路径的信息(暴露文件物理地址)
问题解决或者建议:
大多数情况下,站点很少使用扩展名为".ida"和".idq"的文件,可在ISAPI脚本映射中,将扩展名为".ida"和".idq"的应用程序映射删除。
13请求不存在的扩展名为idq或ida 文件,会暴露服务器上得物理地址.
问题描述:
通过请求一个不存在的扩展名为idq或ida得文件,IIS会暴露文件在服务器上得物理地址.这样会给攻击者提供了不必要的信息,而且,这对攻击一个Web站点来说,是很有价值的第一步。
测试程序:
通过请求如:
http://someurl/anything.ida
http://someurl/lunwen/anything.ida
或:
http://someurl/anything.idq
一个远端用户可以收到类似:'The IDQ d:\http\anything.idq could not be found'的响应。
这样的一个响应就会让攻击者获得了Web站点的物理路径,并且还可以获得更多的有关该站点在服务器上的组织与结构。
14、NT Index Server存在返回上级目录的漏洞
问题描述
受影响的版本:Microsoft Index Server2.0 [WinNT4.0,WinNT 2000.0]
Index Sserver2.0是WinNT4.0 Option Pack中附带的一个软件的工具,其中的功能已经被WinNT 2000中的Indexing Services所包含。当与IIS结合使用时,Index Server和Indexing Services便可以在最初的环境来浏览Web Search的结果,它将生成一个HTML文件,其中包含了查找后所返回页面内容的简短引用,并将其连接至所返回的页面[即符合查询内容的页面],也就是超级连接。要做到这一点,它便需要支持由webhits.dll ISAPI程序处理的.htw文件类型。这个dll允许在一个模版中使用"../"用做返回上级目录的字符串.这样,了解服务器文件结构的攻击者便可以远程的阅读该机器上的任意文件了。
漏洞的利用:
1)您的系统中存在.htw文件
Index Server提供的这种超级连接允许Web用户获得一个关于他搜寻结果的返回页,这个页面的名字是与CiWebHitsFile变量一起通过.htw文件的,webhits.dll这个ISAPI程序将处理这个请求,对其进行超级连接并返回该页面。因此用户便可以控制通过.htw文件的CiWebHits变量,请求到任何所希望获得的信息。另外存在的一个问题便是ASP或其他脚本文件的源代码也可以利用该方法来获得。
上面我们说过webhits.dll后接上"../"便可以访问到Web虚拟目录外的文件,下面我们来看个例子:
http://somerul/iissamples/issamples/oop/qfullhit.dll?CiWebHitsFile=/../../winnt/system32/logfiles/w3svc1/ex000121.log&CiRestriction=none&CiHiliteType=Full
在浏览器中输入该地址,便可以获得该服务器上给定日期的Web日志文件.
在系统常见的.htw样本文件有:
/iissamples/issamples/oop/qfullhit.htw
/iissamples/issamples/oop/qsumrhit.htw
/iissamples/exair/search/qfullhit.htw
/iissamples/exair/search/qsumrhit.hw
/iishelp/iis/misc/iirturnh.htw [这个文件通常受loopback限制]
2)您的系统中不存在.htw文件
调用一个webhits.dll ISAPI程序需要通过.htw文件来完成,如果您的系统中不存在.htw文件,虽然请求一个不存在的.htw文件将失败,但是您的仍然存在可被利用的漏洞。其中的窍门便是利用inetinfo.exe来调用webhits.dll,这样同样能访问到Web虚拟目录外的文件。但我们需要通过制作一个的特殊的URL来完成该漏洞的利用。首先我们需要一个有效的文件资源,这个文件必须是一个静态的文件,如".htm",".html",".txt"或者".gif",".jpg"。这些文件将用作模版来被webhits.dll打开。现在我们需要获得inetinfo.exe来利用webhits.dll,唯一可以做到这点的便是请求一个.htw文件:
http://url/default.htm.htw?CiWebHitsFile=/../../winnt/system32/logfiles/w3svc1/ex000121.log&CiRestriction=none&CiHiliteType=Full
很明显,这个请求肯定会失败,因为系统上不存在这个文件。但请注意,我们现在已经调用到了webhits.dll,我们只要在一个存在的文件资源后面[也就是在.htw前面]加上一串特殊的数字( %20s ),[就是在例子中default.htm后面加上这个代表空格的特殊数字],这样我们便可以欺骗过web服务器从而达到我们的目的.由于在缓冲部分中.htw文件名字部分被删除掉[由于%20s这个符号],所以,当请求传送到webhits.dll的时候,便可以成功的打开该文件,并返回给客户端,而且过程中并不要求系统中真的存在.htw文件。
问题解决和建议:
微软已经对该问题发放了补丁:
Index Server 2.0:
Intel: http://www.microsoft.com/downloads/release.asp?ReleaseID=17727
Alpha: http://www.microsoft.com/downloads/release.asp?ReleaseID=17728
Windows 2000 Indexing Services:
Intel: http://www.microsoft.com/downloads/release.asp?ReleaseID=17726
15 绕过验证直接进入ASP页面。
漏洞描述:
如果用户知道了一个ASP页面的路径和文件名,而这个文件又是要经过验证才能进去的,但是用户直接输入这个ASP页面的文件名,就有可能通过绕过验证.比如:我在一些网站上这样试过:首先关闭所有的浏览器,窗口,输入:
http://someurl/system_search.asp?page=1
就样就看到了只能系统员才能看到的页面。当然有些人为了防止这种情况也会在system_search.asp的开头加个判断,比如:判断session(“system_name”),如果不为空时就能进入,这样上面的url请求就不能直接进入管理员页面了。但是这种方法也有一个漏洞,如果攻击者先用一个合法的帐号,或者在本机上生成一个session,如session(“system_name”)=”admi”,那因为session(“system_name”)不为空,这样也能直接进入绕过密码,直接进入管理员页面。
解决方法:
在需要验证的ASP页面开头处进行相应的处理。比如:可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。
16、IIS4.0/5.0特殊数据格式的URL请求远程DOS攻击
漏 洞 描 述:
当在安装有有IIS4.0或者IIS5.0的web服务上,请求一个具有特殊数据格式的URL,会拖慢受攻击web 服务器的响应速度,或许会使其暂时停止响应。
受影响的版本
Microsoft Internet Information Server 4.0
Microsoft Internet Information Server 5.0
漏洞测试程序如下:
http://202.96.168.51/download/exploits/iisdos.exe
源代码如下:
http://202.96.168.51/download/exploits/iisdos.zip
测试程序:
只要打入:iisdos <***.***.**.**> 就能攻击对方web 服务器
问题解决:
Internet Information Server 4.0:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=20906
Internet Information Server 5.0:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=20904
更多的信息:
http://www.microsoft.com/technet/security/bulletin/ms00-030.asp
Microsoft 安全公告MS00-021:
http://www.microsoft.com/technet/security/bulletin/fq00-030.asp
相关连接
http://www.ussrback.com
17 IIS web server DOS
漏洞描述:
默认情况下,IIS容易被拒绝服务攻击。如果注册表中有一个叫 "MaxClientRequestBuffer" 的键未被创建,针对这种NT系统的攻击通常能奏效。 "MaxClientRequestB
【文章评论 】
【收藏本文 】
【推荐好友 】
【打印本文 】
【论坛讨论 】
相关文章:
文章评论: (条)
责任编辑:一分 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。