Microsoft ASP.NET MS-DOS Device Name DoS - Nessus

High   Plugin ID: 64588

This page contains detailed information about the Microsoft ASP.NET MS-DOS Device Name DoS Nessus plugin including available exploits and PoCs found on GitHub, in Metasploit or Exploit-DB for verifying of this vulnerability.

Plugin Overview


ID: 64588
Name: Microsoft ASP.NET MS-DOS Device Name DoS
Filename: asp_net_device_dos.nasl
Vulnerability Published: 2007-05-22
This Plugin Published: 2013-02-13
Last Modification Time: 2019-12-04
Plugin Version: 1.5
Plugin Type: remote
Plugin Family: Web Servers
Dependencies: http_version.nasl
Required KB Items [?]: Settings/ParanoidReport

Vulnerability Information


Severity: High
Vulnerability Published: 2007-05-22
Patch Published: N/A
CVE [?]: CVE-2007-2897
CPE [?]: cpe:/a:microsoft:asp.net, cpe:/o:microsoft:windows

Synopsis

A framework used by the remote web server has a denial of service vulnerability.

Description

The web server running on the remote host appears to be using Microsoft ASP.NET, and may be affected by a denial of service vulnerability. Requesting a URL containing an MS-DOS device name can cause the web server to become temporarily unresponsive. An attacker could repeatedly request these URLs, resulting in a denial of service.

Additionally, there is speculation that this vulnerability could result in code execution if an attacker with physical access to the machine connects to a serial port.

Solution

Use an ISAPI filter to block requests for URLs with MS-DOS device names.

Public Exploits


Target Network Port(s): 80
Target Asset(s): Services/www
Exploit Available: True (Exploit-DB)
Exploit Ease: Exploits (PoCs) are available

Here's the list of publicly known exploits and PoCs for verifying the Microsoft ASP.NET MS-DOS Device Name DoS vulnerability:

  1. Exploit-DB: exploits/windows/dos/3965.pl
    [EDB-3965: Microsoft IIS 6.0 - '/AUX / '.aspx' Remote Denial of Service]

Before running any exploit against any system, make sure you are authorized by the owner of the target system(s) to perform such activity. In any other case, this would be considered as an illegal activity.

WARNING: Beware of using unverified exploits from sources such as GitHub or Exploit-DB. These exploits and PoCs could contain malware. For more information, see how to use exploits safely.

Risk Information


CVSS Score Source [?]: CVE-2007-2897
CVSS V2 Vector: AV:N/AC:L/Au:N/C:P/I:P/A:P/E:U/RL:OF/RC:C
CVSS Base Score:7.5 (High)
Impact Subscore:6.4
Exploitability Subscore:10.0
CVSS Temporal Score:5.5 (Medium)
CVSS Environmental Score:NA (None)
Modified Impact Subscore:NA
Overall CVSS Score:5.5 (Medium)

Go back to menu.

Plugin Source


This is the asp_net_device_dos.nasl nessus plugin source code. This script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.

#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(64588);
  script_version("1.5");
  script_cvs_date("Date: 2019/12/04");

  script_cve_id("CVE-2007-2897");
  script_bugtraq_id(51527);
  script_xref(name:"EDB-ID", value:"3965");

  script_name(english:"Microsoft ASP.NET MS-DOS Device Name DoS");
  script_summary(english:"Attempts a PoC");

  script_set_attribute(attribute:"synopsis", value:
"A framework used by the remote web server has a denial of service
vulnerability.");
  script_set_attribute(attribute:"description", value:
"The web server running on the remote host appears to be using Microsoft
ASP.NET, and may be affected by a denial of service vulnerability. 
Requesting a URL containing an MS-DOS device name can cause the web
server to become temporarily unresponsive.  An attacker could repeatedly
request these URLs, resulting in a denial of service. 

Additionally, there is speculation that this vulnerability could result
in code execution if an attacker with physical access to the machine
connects to a serial port.");
  script_set_attribute(attribute:"see_also", value:"https://seclists.org/fulldisclosure/2007/May/378");
  script_set_attribute(attribute:"see_also", value:"https://seclists.org/fulldisclosure/2007/May/415");
  # https://groups.google.com/forum/?fromgroups=#!msg/microsoft.public.inetserver.iis/OUygrC7gO_A/Z0Juq-hkfZ0J
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?d32fbf50");
  script_set_attribute(attribute:"solution", value:
"Use an ISAPI filter to block requests for URLs with MS-DOS device
names.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2007-2897");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");

  script_set_attribute(attribute:"vuln_publication_date", value:"2007/05/22");
  script_set_attribute(attribute:"plugin_publication_date", value:"2013/02/13");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:microsoft:asp.net");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:microsoft:windows");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Web Servers");

  script_copyright(english:"This script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("http_version.nasl");
  script_require_keys("Settings/ParanoidReport");
  script_require_ports("Services/www", 80);

  exit(0);
}

include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("http.inc");
include("webapp_func.inc");

if (!get_kb_item('Settings/ParanoidReport')) audit(AUDIT_PARANOID);

port = get_http_port(default:80, asp:TRUE);

url = '/AUX/.aspx';
timeout = get_read_timeout() + 10;
http_set_read_timeout(timeout);
res = http_send_recv3(method:'GET', item:url, port:port, exit_on_fail:TRUE);
headers = parse_http_headers(status_line:res[0], headers:res[1]);

if (
  headers['$code'] == 500 ||
  'Runtime Error' >< res[2] ||
  'HttpException' >< res[2]
)
{
  if (report_verbosity > 0)
  {
    header =
      'Nessus received an HTTP 500 or related error message by requesting\n' +
      'the following URL';
    report = get_vuln_report(header:header, items:url, port:port);
    security_hole(port:port, extra:report);
  }
  else security_hole(port);
}
else audit(AUDIT_LISTEN_NOT_VULN, 'web server', port);

The latest version of this script can be found in these locations depending on your platform:

  • Linux / Unix:
    /opt/nessus/lib/nessus/plugins/asp_net_device_dos.nasl
  • Windows:
    C:\ProgramData\Tenable\Nessus\nessus\plugins\asp_net_device_dos.nasl
  • Mac OS X:
    /Library/Nessus/run/lib/nessus/plugins/asp_net_device_dos.nasl

Go back to menu.

How to Run


Here is how to run the Microsoft ASP.NET MS-DOS Device Name DoS as a standalone plugin via the Nessus web user interface (https://localhost:8834/):

  1. Click to start a New Scan.
  2. Select Advanced Scan.
  3. Navigate to the Plugins tab.
  4. On the top right corner click to Disable All plugins.
  5. On the left side table select Web Servers plugin family.
  6. On the right side table select Microsoft ASP.NET MS-DOS Device Name DoS plugin ID 64588.
  7. Specify the target on the Settings tab and click to Save the scan.
  8. Run the scan.

Here are a few examples of how to run the plugin in the command line. Note that the examples below demonstrate the usage on the Linux / Unix platform.

Basic usage:

/opt/nessus/bin/nasl asp_net_device_dos.nasl -t <IP/HOST>

Run the plugin with audit trail message on the console:

/opt/nessus/bin/nasl -a asp_net_device_dos.nasl -t <IP/HOST>

Run the plugin with trace script execution written to the console (useful for debugging):

/opt/nessus/bin/nasl -T - asp_net_device_dos.nasl -t <IP/HOST>

Run the plugin with using a state file for the target and updating it (useful for running multiple plugins on the target):

/opt/nessus/bin/nasl -K /tmp/state asp_net_device_dos.nasl -t <IP/HOST>

Go back to menu.

References


BID | SecurityFocus Bugtraq ID: See also: Similar and related Nessus plugins:
  • 64589 - Microsoft ASP.NET MS-DOS Device Name DoS (PCI-DSS check)
  • 57561 - MS11-100: ASP.NET Could Allow Denial of Service (2638420) (uncredentialed check)
  • 153474 - Microsoft Open Management Infrastructure < 1.6.8.1 Multiple Vulnerabilities
  • 11923 - Microsoft FrontPage Server Extensions (fp30reg.dll) Debug Function Remote Overflow (MS03-051 / 813360)
  • 10497 - Microsoft FrontPage Extensions MS-DOS Device Request DoS
  • 10405 - Microsoft IIS FrontPage Server Extensions (FPSE) shtml.exe Path Disclosure
  • 99523 - Microsoft Windows Server 2003 IIS 6.0 WebDAV PROPFIND Request Handling RCE (EXPLODINGCAN)
  • 99281 - Microsoft Windows Server 2003 R2 IIS 6.0 WebDAV PROPFIND Request Handling RCE (EXPLODINGCAN)
  • 108808 - Microsoft IIS 7.0 Vulnerabilities (uncredentialed) (PCI/DSS)
  • 10116 - Microsoft IIS ISM.DLL HTR Request Remote Overflow
  • 10932 - Microsoft IIS .HTR ISAPI Filter Enabled
  • 11028 - Microsoft IIS .HTR Filter Multiple Overflows (MS02-028)
  • 31648 - Microsoft IIS webhits.dll Hit-Highlighting Authentication Bypass
  • 10685 - Microsoft IIS ISAPI Filter Multiple Vulnerabilities (MS01-044)
  • 11412 - Microsoft IIS WebDAV ntdll.dll Remote Overflow (MS03-007)
  • 10357 - Microsoft IIS MDAC RDS (msadcs.dll) Arbitrary Remote Command Execution
  • 11161 - Microsoft Data Access Components RDS Data Stub Remote Overflow
  • 11664 - Microsoft Media Services ISAPI nsiislog.dll Multiple Overflows
  • 153486 - Microsoft Open Management Infrastructure RCE (CVE-2021-38647)
  • 38808 - Microsoft IIS WebDAV Unicode Request Directory Security Bypass
  • 10704 - Apache Multiviews Arbitrary Directory Listing
  • 30107 - CandyPress Store admin/utilities_ConfigHelp.asp helpfield Parameter SQL Injection
  • 31191 - Hosting Controller hosting/addreseller.asp reseller Parameter Authentication Bypass
  • 10498 - Web Server HTTP Dangerous Method Detection
  • 31192 - Nukedit utilities/login.asp email Parameter SQL Injection
  • 49806 - MS10-070: Vulnerability in ASP.NET Could Allow Information Disclosure (2418042) (uncredentialed check)
  • 29897 - PortalApp forums.asp sortby Parameter SQL Injection
  • 16333 - MS05-004: ASP.NET Path Validation Vulnerability (887219)
  • 49695 - MS10-070: Vulnerability in ASP.NET Could Allow Information Disclosure (2418042)
  • 125164 - Security Update for Microsoft ASP.NET Core (DoS) (May 2019)
  • 128770 - Security Update for Microsoft ASP.NET Core (Sep 2019)
  • 33439 - Sun Java System ASP < 4.0.3 Multiple Vulnerabilities
  • 107096 - Telerik UI for ASP.NET AJAX RadAsyncUpload Multiple Vulnerabilities
  • 101159 - Telerik UI for ASP.NET AJAX Cryptographic Weakness
  • 135970 - Telerik UI for ASP.NET AJAX RadAsyncUpload .NET Deserialization Vulnerability

Version


This page has been produced using Nessus Professional 10.1.2 (#68) LINUX, Plugin set 202205072148.
Plugin file asp_net_device_dos.nasl version 1.5. For more plugins, visit the Nessus Plugin Library.

Go back to menu.