Vulnerabilities > CVE-2001-0895 - Local Interface ARP Denial of Service vulnerability in Cisco
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
NONE Integrity impact
NONE Availability impact
PARTIAL Summary
Multiple Cisco networking products allow remote attackers to cause a denial of service on the local network via a series of ARP packets sent to the router's interface that contains a different MAC address for the router, which eventually causes the router to overwrite the MAC address in its ARP table.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
Hardware | 11 |
Nessus
NASL family CISCO NASL id CISCO-SA-20011115-IOS-ARP-OVERWRITEHTTP.NASL description It is possible to send an Address Resolution Protocol (ARP) packet on a local broadcast interface (for example, Ethernet, cable, Token Ring, FDDI) which could cause a router or switch running specific versions of Cisco IOS Software Release to stop sending and receiving ARP packets on the local router interface. This will in a short time cause the router and local hosts to be unable to send packets to each other. ARP packets received by the router for the router\ last seen 2020-06-01 modified 2020-06-02 plugin id 48961 published 2010-09-01 reporter This script is (C) 2010-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/48961 title Cisco IOS ARP Table Overwrite Vulnerability - Cisco Systems code # # (C) Tenable Network Security, Inc. # # Security advisory is (C) CISCO, Inc. # See https://www.cisco.com/en/US/products/products_security_advisory09186a00800b113c.shtml if (NASL_LEVEL < 3000) exit(0); include("compat.inc"); if (description) { script_id(48961); script_version("1.10"); script_cve_id("CVE-2001-0895"); script_bugtraq_id(3547); script_xref(name:"CERT", value:"399355"); script_xref(name:"CISCO-BUG-ID", value:"CSCdu81936"); script_xref(name:"CISCO-BUG-ID", value:"CSCdu85209"); script_xref(name:"CISCO-BUG-ID", value:"CSCdv04366"); script_xref(name:"CISCO-BUG-ID", value:"CSCdv63206"); script_xref(name:"CISCO-BUG-ID", value:"CSCdv77220"); script_xref(name:"CISCO-BUG-ID", value:"CSCdv77242"); script_xref(name:"CISCO-BUG-ID", value:"CSCdv83509"); script_xref(name:"CISCO-SA", value:"cisco-sa-20011115-ios-arp-overwrite"); script_name(english:"Cisco IOS ARP Table Overwrite Vulnerability - Cisco Systems"); script_set_attribute(attribute:"synopsis", value: "The remote device is missing a vendor-supplied security patch" ); script_set_attribute(attribute:"description", value: 'It is possible to send an Address Resolution Protocol (ARP) packet on a local broadcast interface (for example, Ethernet, cable, Token Ring, FDDI) which could cause a router or switch running specific versions of Cisco IOS Software Release to stop sending and receiving ARP packets on the local router interface. This will in a short time cause the router and local hosts to be unable to send packets to each other. ARP packets received by the router for the router\'s own interface address but a different Media Access Control (MAC) address will overwrite the router\'s MAC address in the ARP table with the one from the received ARP packet. This was demonstrated to attendees of the Black Hat conference and should be considered to be public knowledge. This attack is only successful against devices on the segment local to the attacker or attacking host. This vulnerability is documented in Cisco Bug ID CSCdu81936, and a workaround is available. '); # https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20011115-ios-arp-overwrite script_set_attribute(attribute:"see_also", value: "http://www.nessus.org/u?1c376185"); # https://www.cisco.com/en/US/products/products_security_advisory09186a00800b113c.shtml script_set_attribute(attribute:"see_also", value: "http://www.nessus.org/u?40d7b236"); script_set_attribute(attribute:"solution", value: "Apply the relevant patch referenced in Cisco Security Advisory cisco-sa-20011115-ios-arp-overwrite."); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P"); script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available"); script_set_attribute(attribute:"exploit_available", value:"false"); script_set_attribute(attribute:"plugin_type", value: "local"); script_set_attribute(attribute:"cpe", value: "cpe:/o:cisco:ios"); script_set_attribute(attribute:"vuln_publication_date", value: "2001/11/15"); script_set_attribute(attribute:"patch_publication_date", value: "2001/11/15"); script_set_attribute(attribute:"plugin_publication_date", value: "2010/09/01"); script_cvs_date("Date: 2018/11/15 20:50:20"); script_end_attributes(); script_summary(english:"Uses SNMP to determine if a flaw is present"); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is (C) 2010-2018 Tenable Network Security, Inc."); script_family(english:"CISCO"); script_dependencie("cisco_ios_version.nasl"); script_require_keys("Host/Cisco/IOS/Version"); exit(0); } include("cisco_func.inc"); # version = get_kb_item_or_exit("Host/Cisco/IOS/Version"); # Affected: 11.1 and earlier, all variants if ( version =~ "^[0-9]\." || # 0.x-9.x version =~ "^10\." || # 10.x version =~ "^11\.[01][^0-9]" # 11.0, 11.1 ) { security_warning(port:0, extra: '\nNo updates are scheduled for versions 11.1 and earlier. Upgrade to a supported version\n'); exit(0); } # the language for all 11.2 and 11.3 releases are ambiguous, e.g., # 11.2: Not affected after 11.2(13) # talked to Cisco and they said this means 11.2(13) is the first non-vulnerable version # Affected: 11.2 if (check_release(version: version, patched: make_list("11.2(13)") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.2P if (check_release(version: version, patched: make_list("11.2(12)P") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3 if (check_release(version: version, patched: make_list("11.3(3)") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3T if (deprecated_version(version, "11.3T")) { security_warning(port:0, extra: '\nUpdate to 11.3(3) or later\n'); exit(0); } # Affected: 12.0 if (check_release(version: version, patched: make_list("12.0(19.6)") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0DA if (deprecated_version(version, "12.0DA")) { security_warning(port:0, extra: '\nUpgrade to 12.2DA\n'); exit(0); } # Affected: 12.0DB if (deprecated_version(version, "12.0DB")) { security_warning(port:0, extra: '\nUpdate to 12.2(4.2) or later\n'); exit(0); # the advisory says to upgrade to 12.1T, but for 12.1T it says to upgrade to 12.2 (which says to upgrade to 12.2(4.2) } # Affected: 12.0DC if (deprecated_version(version, "12.0DC")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)B or later\n'); exit(0); } # Affected: 12.0S if (check_release(version: version, patched: make_list("12.0(21)S") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0SC if (deprecated_version(version, "12.0SC")) { security_warning(port:0, extra: '\nUpdate to 12.1(8.5)EC or later\n'); exit(0); } # Affected: 12.0SL if (deprecated_version(version, "12.0SL")) { security_warning(port:0, extra: '\nUpdate to 12.0(20)ST or later\n'); exit(0); } # Affected: 12.0SP if (check_release(version: version, patched: make_list("12.0(20)SP") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0ST if (check_release(version: version, patched: make_list("12.0(20)ST") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0T if (deprecated_version(version, "12.0T")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0W5 if ( version =~ 'W5' && # avoid flagging versions like W4, if such a thing exists check_release(version: version, patched: make_list("12.0(16)W5(21b)", "12.0(18)W5(22a)", "12.0(20)W5(24)") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0WC if (check_release(version: version, patched: make_list("12.0(5)WC3") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0XA if (deprecated_version(version, "12.0XA")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XB if (deprecated_version(version, "12.0XB")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XC if (deprecated_version(version, "12.0XC")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XD if (deprecated_version(version, "12.0XD")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XE if (deprecated_version(version, "12.0XE")) { security_warning(port:0, extra: '\nUpdate to 12.1(11)E or later\n'); exit(0); } # Affected: 12.0XF if (deprecated_version(version, "12.0XF")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XG if (deprecated_version(version, "12.0XG")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XH if (deprecated_version(version, "12.0XH")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XI if (deprecated_version(version, "12.0XI")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XJ if (deprecated_version(version, "12.0XJ")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XK if (deprecated_version(version, "12.0XK")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XL if (deprecated_version(version, "12.0XL")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XM if (deprecated_version(version, "12.0XM")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XN if (deprecated_version(version, "12.0XN")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XP if (deprecated_version(version, "12.0XP")) { security_warning(port:0, extra: '\nNo updates are scheduled for 12.0XP. Use the workaround or upgrade to a supported version\n'); exit(0); } # Affected: 12.0XQ if (deprecated_version(version, "12.0XQ")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XR if (deprecated_version(version, "12.0XR")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.0XS if (deprecated_version(version, "12.0XS")) { security_warning(port:0, extra: '\nUpdate to 12.1(11)E or later\n'); exit(0); } # Affected: 12.0XU if (deprecated_version(version, "12.0XU")) { security_warning(port:0, extra: '\nNo updates are scheduled for 12.0XU. Use the workaround or upgrade to a supported version\n'); exit(0); } # Affected: 12.0XV if (deprecated_version(version, "12.0XV")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1 if (check_release(version: version, patched: make_list("12.1(10.3)", "12.1(11)"))) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1AA if (check_release(version: version, patched: make_list("12.1(10)AA") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1DA if (deprecated_version(version, "12.1DA")) { security_warning(port:0, extra: '\nUpdate to 12.2(7)T or later\n'); exit(0); } # Affected: 12.1DB if (deprecated_version(version, "12.1DB")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)B or later\n'); exit(0); } # Affected: 12.1DC if (deprecated_version(version, "12.1DC")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)B or later\n'); exit(0); } # Affected: 12.1E if (check_release(version: version, patched: make_list("12.1(8a)E5") )) { # advisory lists this as 12.1(08a)E05 security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1EA if (check_release(version: version, patched: make_list("12.1(6)EA1a") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1EC if (check_release(version: version, patched: make_list("12.1(8.5)EC", "12.1(9)EC"))) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1EX if (deprecated_version(version, "12.1EX")) { security_warning(port:0, extra: '\nUpdate to 12.1(11)E or later\n'); exit(0); } # Affected: 12.1EZ if (check_release(version: version, patched: make_list("12.1(6)EZ4"))) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1T if (deprecated_version(version, "12.1T")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XA if (deprecated_version(version, "12.1XA")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XB if (deprecated_version(version, "12.1XB")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XC if (deprecated_version(version, "12.1XC")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XD if (deprecated_version(version, "12.1XD")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XE if (deprecated_version(version, "12.1XE")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XF if (check_release(version: version, patched: make_list("12.1(2)XF5") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XG if (check_release(version: version, patched: make_list("12.1(3)XG6") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XH if (deprecated_version(version, "12.1XH")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XI if (deprecated_version(version, "12.1XI")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XJ if (deprecated_version(version, "12.1XJ")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XK if (deprecated_version(version, "12.1XK")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XL if (deprecated_version(version, "12.1XL")) { security_warning(port:0, extra: '\nUpdate to 12.2(4)2 or later\n'); exit(0); } # Affected: 12.1XM if (check_release(version: version, patched: make_list("12.1(5)XM6") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XP if (deprecated_version(version, "12.1XP")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)T or later\n'); exit(0); } # Affected: 12.1XQ if (deprecated_version(version, "12.1XQ")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)T or later\n'); exit(0); } # Affected: 12.1XR if (deprecated_version(version, "12.1XR")) { security_warning(port:0, extra: '\nUpdate to 12.2(7)T or later\n'); exit(0); } # Affected: 12.1XS if (deprecated_version(version, "12.1XS")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)XC1 or later\n'); exit(0); } # Affected: 12.1XT if (deprecated_version(version, "12.1XT")) { security_warning(port:0, extra: '\nUpdate to 12.2(7)T or later\n'); exit(0); } # Affected: 12.1XV if (deprecated_version(version, "12.1XV")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)XB2 or later\n'); exit(0); } # Affected: 12.1XW if (deprecated_version(version, "12.1XW")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.1XX if (deprecated_version(version, "12.1XX")) { security_warning(port:0, extra: '\nUpdate to 12.1(11) or later\n'); exit(0); } # Affected: 12.1YA if (deprecated_version(version, "12.1YA")) { security_warning(port:0, extra: '\nUpdate to 12.2(2)XB or later\n'); exit(0); } # Affected: 12.1YB if (check_release(version: version, patched: make_list("12.1(5)YB5") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YC if (check_release(version: version, patched: make_list("12.1(5)YC2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YD if (deprecated_version(version, "12.1YD")) { security_warning(port:0, extra: '\nUpdate to 12.2(7)T or later\n'); exit(0); } # Affected: 12.1YE if (check_release(version: version, patched: make_list("12.1(5)YE4") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YF if (check_release(version: version, patched: make_list("12.1(5)YF3") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2 if (check_release(version: version, patched: make_list("12.2(4.2)", "12.2(5)"))) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2DD if (check_release(version: version, patched: make_list("12.2(2)DD1"))) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2T if (check_release(version: version, patched: make_list("12.2(7)T") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XA if (check_release(version: version, patched: make_list("12.2(2)XA4") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XB if (check_release(version: version, patched: make_list("12.2(2)XB2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XC if (check_release(version: version, patched: make_list("12.2(2)XC1") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XD if (check_release(version: version, patched: make_list("12.2(1)XD3") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XE if (check_release(version: version, patched: make_list("12.2(1)XE2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XG if (check_release(version: version, patched: make_list("12.2(2)XG1") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XH if (check_release(version: version, patched: make_list("12.2(2)XH2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XJ if (check_release(version: version, patched: make_list("12.2(2)XJ2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XK if (check_release(version: version, patched: make_list("12.2(2)XK5") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.2XQ if (check_release(version: version, patched: make_list("12.2(2)XQ2") )) { security_warning(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } exit(0, "The remote host is not affected");
NASL family CISCO NASL id CSCDU81936.NASL description It is possible to send an Address Resolution Protocol (ARP) packet on a local broadcast interface (for example, Ethernet, cable, Token Ring, FDDI) which could cause a router or switch running specific versions of Cisco IOS Software Release to stop sending and receiving ARP packets on the local router interface. This will, in a short time, cause the router and local hosts to be unable to send packets to each other. ARP packets received by the router for the router last seen 2020-06-01 modified 2020-06-02 plugin id 10984 published 2002-06-05 reporter This script is (C) 2002-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/10984 title Cisco IOS ARP Table Overwrite DoS (CSCdu81936) code # # (C) Tenable Network Security, Inc. # # Script audit and contributions from Carmichael Security # Erik Anderson <[email protected]> (nb: domain no longer exists) # No vuln in SecurityFocus. SecurityFocus assigned new BugtraqID. Added BugtraqID # include("compat.inc"); if(description) { script_id(10984); script_version("1.22"); script_cve_id("CVE-2001-0895"); script_bugtraq_id(3547); script_name(english:"Cisco IOS ARP Table Overwrite DoS (CSCdu81936)"); script_set_attribute(attribute:"synopsis", value: "The remote device is missing a vendor-supplied security patch." ); script_set_attribute(attribute:"description", value: "It is possible to send an Address Resolution Protocol (ARP) packet on a local broadcast interface (for example, Ethernet, cable, Token Ring, FDDI) which could cause a router or switch running specific versions of Cisco IOS Software Release to stop sending and receiving ARP packets on the local router interface. This will, in a short time, cause the router and local hosts to be unable to send packets to each other. ARP packets received by the router for the router's own interface address but a different Media Access Control (MAC) address will overwrite the router's MAC address in the ARP table with the one from the received ARP packet. This was demonstrated to attendees of the Black Hat conference and should be considered to be public knowledge. This attack is only successful against devices on the segment local to the attacker or attacking host. This vulnerability is documented in Cisco Bug ID CSCdu81936. A local attacker may use this flaw to prevent your network from working properly." ); script_set_attribute(attribute:"solution", value: "http://www.nessus.org/u?fb24d347" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P"); script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available"); script_set_attribute(attribute:"exploit_available", value:"false"); script_set_attribute(attribute:"plugin_publication_date", value: "2002/06/05"); script_cvs_date("Date: 2018/06/27 18:42:25"); script_set_attribute(attribute:"vuln_publication_date", value: "2001/11/15"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value: "cpe:/o:cisco:ios"); script_end_attributes(); script_summary(english:"Uses SNMP to determine if a flaw is present"); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is (C) 2002-2018 Tenable Network Security, Inc."); script_family(english:"CISCO"); script_dependencie("snmp_sysDesc.nasl", "snmp_cisco_type.nasl"); script_require_keys("SNMP/community", "SNMP/sysDesc", "CISCO/model"); exit(0); } # The code starts here ok=0; os = get_kb_item("SNMP/sysDesc"); if(!os)exit(0); hardware = get_kb_item("CISCO/model"); if(!hardware)exit(0); # Check for the required hardware... #---------------------------------------------------------------- # cisco800 if(ereg(string:hardware, pattern:"^cisco80[0-9]$"))ok=1; # ciscoUBR900 if(ereg(string:hardware, pattern:"^ciscoUBR90[0-9]$"))ok=1; # cisco1000 if(ereg(string:hardware, pattern:"^cisco10[0-9][0-9]$"))ok=1; # cisco1400 if(ereg(string:hardware, pattern:"^cisco14[0-9][0-9]$"))ok=1; # cisco1500 if(ereg(string:hardware, pattern:"^cisco15[0-9][0-9]$"))ok=1; # cisco1600 if(ereg(string:hardware, pattern:"^cisco16[0-9][0-9]$"))ok=1; # cisco1700 if(ereg(string:hardware, pattern:"^cisco17[0-9][0-9]$"))ok=1; # cisco2500 if(ereg(string:hardware, pattern:"^cisco25[0-9][0-9]$"))ok=1; # cisco2600 if(ereg(string:hardware, pattern:"^cisco26[0-9][0-9]$"))ok=1; # cisco3000 if(ereg(string:hardware, pattern:"^cisco30[0-9][0-9]$"))ok=1; # cisco3600 if(ereg(string:hardware, pattern:"^cisco36[0-9][0-9]$"))ok=1; # cisco3800 if(ereg(string:hardware, pattern:"^cisco38[0-9][0-9]$"))ok=1; # cisco4000 if(ereg(string:hardware, pattern:"^cisco40[0-9][0-9]$"))ok=1; # cisco4500 if(ereg(string:hardware, pattern:"^cisco45[0-9][0-9]$"))ok=1; # cisco4700 if(ereg(string:hardware, pattern:"^cisco47[0-9][0-9]$"))ok=1; # ciscoAS5200 if(ereg(string:hardware, pattern:"^ciscoAS52[0-9][0-9]$"))ok=1; # ciscoAS5300 if(ereg(string:hardware, pattern:"^ciscoAS53[0-9][0-9]$"))ok=1; # ciscoAS5800 if(ereg(string:hardware, pattern:"^ciscoAS58[0-9][0-9]$"))ok=1; # cisco6400 if(ereg(string:hardware, pattern:"^cisco64[0-9][0-9]$"))ok=1; # cisco7000 if(ereg(string:hardware, pattern:"^cisco70[0-9][0-9]$"))ok=1; # ciscoUBR7200 if(ereg(string:hardware, pattern:"^ciscoUBR72[0-9][0-9]$"))ok=1; # cisco7500 if(ereg(string:hardware, pattern:"^cisco75[0-9][0-9]$"))ok=1; # cisco12000 if(ereg(string:hardware, pattern:"^cisco12[0-9][0-9][0-9]$"))ok=1; # ciscoLS1010 if(ereg(string:hardware, pattern:"^ciscoLS101[0-9]$"))ok=1; # catalyst29[0-9][0-9][^0-9]* if(ereg(string:hardware, pattern:"^catalyst29[0-9][0-9][^0-9]*$"))ok=1; # catalyst35[0-9][0-9][^0-9]* if(ereg(string:hardware, pattern:"^catalyst35[0-9][0-9][^0-9]*$"))ok=1; # catalyst4kGateway if(ereg(string:hardware, pattern:"^catalyst4kGateway$"))ok=1; # catalyst5kRsfc if(ereg(string:hardware, pattern:"^catalyst5kRsfc$"))ok=1; # catalyst6kMsfc if(ereg(string:hardware, pattern:"^catalyst6kMsfc$"))ok=1; # catalyst6kMsfc2 if(ereg(string:hardware, pattern:"^catalyst6kMsfc2$"))ok=1; # catalyst85[0-9][0-9][^0-9]* if(ereg(string:hardware, pattern:"^catalyst85[0-9][0-9][^0-9]*$"))ok=1; if(!ok)exit(0); ok = 0; # Check for the required operating system... #---------------------------------------------------------------- # Is this IOS ? if(!egrep(pattern:".*(Internetwork Operating|IOS).*", string:os))exit(0); # 11.1 if(egrep(string:os, pattern:"(11\.1\([0-9]*\)|11\.1),"))ok=1; # 11.2 if(egrep(string:os, pattern:"(11\.2\(([0-9]|1[0-2])\)|11\.2),"))ok=1; # 11.2P if(egrep(string:os, pattern:"(11\.2\(([0-9]|1[0-1])\)|11\.2)P[0-9]*,"))ok=1; # 11.3 if(egrep(string:os, pattern:"(11\.3\([0-2]\)|11\.3),"))ok=1; # 11.3T if(egrep(string:os, pattern:"(11\.3\([0-2]\)|11\.3)T[0-9]*,"))ok=1; # 12.0 if(egrep(string:os, pattern:"(12\.0\(([0-9]|1[0-9])\)|12\.0),"))ok=1; # 12.0DA if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)DA[0-9]*,"))ok=1; # 12.0DB if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)DB[0-9]*,"))ok=1; # 12.0DC if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)DC[0-9]*,"))ok=1; # 12.0S if(egrep(string:os, pattern:"(12\.0\(([0-9]|[1-1][0-9]|2[0-0])\)|12\.0)S[0-9]*,"))ok=1; # 12.0SC if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)SC[0-9]*,"))ok=1; # 12.0SL if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)SL[0-9]*,"))ok=1; # 12.0SP if(egrep(string:os, pattern:"(12\.0\(([0-9]|1[0-9])\)|12\.0)SP[0-9]*,"))ok=1; # 12.0ST if(egrep(string:os, pattern:"(12\.0\(([0-9]|1[0-9])\)|12\.0)ST[0-9]*,"))ok=1; # 12.0T if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)T[0-9]*,"))ok=1; # 12.0W5 if(egrep(string:os, pattern:"(12\.0\(([0-9]|1[0-9])\)|12\.0)W5[0-9]*,"))ok=1; # 12.0WC if(egrep(string:os, pattern:"((12\.0\([0-4]\)|12\.0)WC[0-9]*|12\.0\(5\)WC[0-2]),"))ok=1; # 12.0XA if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XA[0-9]*,"))ok=1; # 12.0XB if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XB[0-9]*,"))ok=1; # 12.0XC if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XC[0-9]*,"))ok=1; # 12.0XD if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XD[0-9]*,"))ok=1; # 12.0XE if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XE[0-9]*,"))ok=1; # 12.0XF if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XF[0-9]*,"))ok=1; # 12.0XG if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XG[0-9]*,"))ok=1; # 12.0XH if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XH[0-9]*,"))ok=1; # 12.0XI if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XI[0-9]*,"))ok=1; # 12.0XJ if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XJ[0-9]*,"))ok=1; # 12.0XK if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XK[0-9]*,"))ok=1; # 12.0XL if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XL[0-9]*,"))ok=1; # 12.0XM if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XM[0-9]*,"))ok=1; # 12.0XN if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XN[0-9]*,"))ok=1; # 12.0XP if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XP[0-9]*,"))ok=1; # 12.0XQ if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XQ[0-9]*,"))ok=1; # 12.0XR if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XR[0-9]*,"))ok=1; # 12.0XS if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XS[0-9]*,"))ok=1; # 12.0XU if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XU[0-9]*,"))ok=1; # 12.0XV if(egrep(string:os, pattern:"(12\.0\([0-9]*\)|12\.0)XV[0-9]*,"))ok=1; # 12.1 if(egrep(string:os, pattern:"(12\.1\(([0-9]|1[0-0])\)|12\.1),"))ok=1; # 12.1AA if(egrep(string:os, pattern:"(12\.1\([0-9]\)|12\.1)AA[0-9]*,"))ok=1; # 12.1DA if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)DA[0-9]*,"))ok=1; # 12.1DB if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)DB[0-9]*,"))ok=1; # 12.1DC if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)DC[0-9]*,"))ok=1; # 12.1E if(egrep(string:os, pattern:"(12\.1\(([0-9]|1[0-0])\)|12\.1)E[0-9]*,"))ok=1; # 12.1EC if(egrep(string:os, pattern:"(12\.1\([0-8]\)|12\.1)EC[0-9]*,"))ok=1; # 12.1EX if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)EX[0-9]*,"))ok=1; # 12.1EY if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)EY[0-9]*,"))ok=1; # 12.1EZ if(egrep(string:os, pattern:"(12\.1\([0-5]\)|12\.1)EZ[0-9]*,"))ok=1; # 12.1T if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)T[0-9]*,"))ok=1; # 12.1XA if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XA[0-9]*,"))ok=1; # 12.1XB if(egrep(string:os, pattern:"((12\.1\([0-1]\)|12\.1)XB[0-9]*|12\.1\(2\)XB[0-1]),"))ok=1; # 12.1XC if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XC[0-9]*,"))ok=1; # 12.1XD if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XD[0-9]*,"))ok=1; # 12.1XE if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XE[0-9]*,"))ok=1; # 12.1XF if(egrep(string:os, pattern:"((12\.1\([0-1]\)|12\.1)XF[0-9]*|12\.1\(2\)XF[0-4]),"))ok=1; # 12.1XG if(egrep(string:os, pattern:"((12\.1\([0-2]\)|12\.1)XG[0-9]*|12\.1\(3\)XG[0-5]),"))ok=1; # 12.1XH if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XH[0-9]*,"))ok=1; # 12.1XI if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XI[0-9]*,"))ok=1; # 12.1XJ if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XJ[0-9]*,"))ok=1; # 12.1XK if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XK[0-9]*,"))ok=1; # 12.1XL if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XL[0-9]*,"))ok=1; # 12.1XM if(egrep(string:os, pattern:"((12\.1\([0-4]\)|12\.1)XM[0-9]*|12\.1\(5\)XM[0-5]),"))ok=1; # 12.1XP if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XP[0-9]*,"))ok=1; # 12.1XQ if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XQ[0-9]*,"))ok=1; # 12.1XR if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XR[0-9]*,"))ok=1; # 12.1XS if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XS[0-9]*,"))ok=1; # 12.1XT if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XT[0-9]*,"))ok=1; # 12.1XU if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XU[0-9]*,"))ok=1; # 12.1XV if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XV[0-9]*,"))ok=1; # 12.1XW if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XW[0-9]*,"))ok=1; # 12.1XX if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)XX[0-9]*,"))ok=1; # 12.1YA if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)YA[0-9]*,"))ok=1; # 12.1YB if(egrep(string:os, pattern:"((12\.1\([0-4]\)|12\.1)YB[0-9]*|12\.1\(5\)YB[0-4]),"))ok=1; # 12.1YC if(egrep(string:os, pattern:"((12\.1\([0-4]\)|12\.1)YC[0-9]*|12\.1\(5\)YC[0-1]),"))ok=1; # 12.1YD if(egrep(string:os, pattern:"(12\.1\([0-9]*\)|12\.1)YD[0-9]*,"))ok=1; # 12.1YE if(egrep(string:os, pattern:"((12\.1\([0-4]\)|12\.1)YE[0-9]*|12\.1\(5\)YE[0-3]),"))ok=1; # 12.1YF if(egrep(string:os, pattern:"((12\.1\([0-4]\)|12\.1)YF[0-9]*|12\.1\(5\)YF[0-2]),"))ok=1; # 12.2 if(egrep(string:os, pattern:"(12\.2\([0-4]\)|12\.2),"))ok=1; # 12.2DD if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)DD[0-9]*|12\.2\(2\)DD[0-0]),"))ok=1; # 12.2T if(egrep(string:os, pattern:"(12\.2\([0-6]\)|12\.2)T[0-9]*,"))ok=1; # 12.2XA if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XA[0-9]*|12\.2\(2\)XA[0-3]),"))ok=1; # 12.2XB if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XB[0-9]*|12\.2\(2\)XB[0-1]),"))ok=1; # 12.2XC if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XC[0-9]*|12\.2\(2\)XC[0-0]),"))ok=1; # 12.2XD if(egrep(string:os, pattern:"((12\.2\([0-0]\)|12\.2)XD[0-9]*|12\.2\(1\)XD[0-2]),"))ok=1; # 12.2XE if(egrep(string:os, pattern:"((12\.2\([0-0]\)|12\.2)XE[0-9]*|12\.2\(1\)XE[0-1]),"))ok=1; # 12.2XG if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XG[0-9]*|12\.2\(2\)XG[0-0]),"))ok=1; # 12.2XH if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XH[0-9]*|12\.2\(2\)XH[0-1]),"))ok=1; # 12.2XI if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XI[0-9]*|12\.2\(2\)XI[0-0]),"))ok=1; # 12.2XJ if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XJ[0-9]*|12\.2\(2\)XJ[0-1]),"))ok=1; # 12.2XK if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XK[0-9]*|12\.2\(2\)XK[0-4]),"))ok=1; # 12.2XQ if(egrep(string:os, pattern:"((12\.2\([0-1]\)|12\.2)XQ[0-9]*|12\.2\(2\)XQ[0-1]),"))ok=1; #---------------------------------------------- if(ok)security_warning(port:161, proto:"udp");