Vulnerabilities > CVE-2001-0288 - Unspecified vulnerability in Cisco IOS
Attack vector
UNKNOWN Attack complexity
UNKNOWN Privileges required
UNKNOWN Confidentiality impact
UNKNOWN Integrity impact
UNKNOWN Availability impact
UNKNOWN Summary
Cisco switches and routers running IOS 12.1 and earlier produce predictable TCP Initial Sequence Numbers (ISNs), which allows remote attackers to spoof or hijack TCP connections.
Vulnerable Configurations
Exploit-Db
description | Linux kernel 2.2 Predictable TCP Initial Sequence Number Vulnerability. CVE-1999-0077 ,CVE-2000-0916,CVE-2001-0162,CVE-2001-0163,CVE-2001-0288,CVE-2001-0328... |
id | EDB-ID:19522 |
last seen | 2016-02-02 |
modified | 1999-09-27 |
published | 1999-09-27 |
reporter | Stealth and S. Krahmer |
source | https://www.exploit-db.com/download/19522/ |
title | Linux kernel 2.2 Predictable TCP Initial Sequence Number Vulnerability |
Nessus
NASL family CISCO NASL id CSCDS04747.NASL description Cisco IOS Software contains a flaw that permits the successful prediction of TCP Initial Sequence Numbers. This vulnerability is present in all released versions of Cisco IOS software running on Cisco routers and switches. It only affects the security of TCP connections that originate or terminate on the affected Cisco device itself; it does not apply to TCP traffic forwarded through the affected device in transit between two other hosts. This vulnerability is documented as Cisco bug ID CSCds04747. last seen 2020-03-28 modified 2002-06-05 plugin id 10976 published 2002-06-05 reporter This script is Copyright (C) 2002-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/10976 title Cisco IOS TCP Sequence Prediction Connection Hijacking (CSCds04747) code # # (C) Tenable Network Security, Inc. # # Script audit and contributions from Carmichael Security # Erik Anderson <[email protected]> (nb: domain no longer exists) # Added BugtraqID and CAN # include("compat.inc"); if(description) { script_id(10976); script_version("1.26"); script_cve_id("CVE-2001-0288", "CVE-2001-0328"); script_bugtraq_id(2682); script_name(english:"Cisco IOS TCP Sequence Prediction Connection Hijacking (CSCds04747)"); script_set_attribute(attribute:"synopsis", value: "The remote device is missing a vendor-supplied security patch." ); script_set_attribute(attribute:"description", value: "Cisco IOS Software contains a flaw that permits the successful prediction of TCP Initial Sequence Numbers. This vulnerability is present in all released versions of Cisco IOS software running on Cisco routers and switches. It only affects the security of TCP connections that originate or terminate on the affected Cisco device itself; it does not apply to TCP traffic forwarded through the affected device in transit between two other hosts. This vulnerability is documented as Cisco bug ID CSCds04747." ); script_set_attribute(attribute:"solution", value: "http://www.nessus.org/u?021e980a" ); 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:POC/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available"); script_set_attribute(attribute:"exploit_available", value:"true"); script_set_attribute(attribute:"plugin_publication_date", value: "2002/06/05"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/03/27"); script_set_attribute(attribute:"vuln_publication_date", value: "1995/01/01"); 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 Copyright (C) 2002-2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_family(english:"CISCO"); script_dependencies("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 operating system... #---------------------------------------------------------------- # Is this IOS ? if(!egrep(pattern:".*(Internetwork Operating|IOS).*", string:os))exit(0); # 11.0 if(egrep(string:os, pattern:"(^|\s+)(11\.0\(([0-9]|[1-1][0-9]|2[0-1])\)|11\.0),"))ok=1; # 11.1 if(egrep(string:os, pattern:"(^|\s+)(11\.1\(([0-9]|[1-1][0-9]|2[0-3])\)|11\.1),"))ok=1; # 11.1AA if(egrep(string:os, pattern:"(^|\s+)(11\.1\([0-9]*\)|11\.1)AA[0-9]*,"))ok=1; # 11.1CA if(egrep(string:os, pattern:"(^|\s+)((11\.1\(([0-9]|[1-2][0-9]|3[0-5])\)|11\.1)CA[0-9]*|11\.1\(36\)CA[0-0]),"))ok=1; # 11.1CC if(egrep(string:os, pattern:"(^|\s+)((11\.1\(([0-9]|[1-2][0-9]|3[0-5])\)|11\.1)CC[0-9]*|11\.1\(36\)CC[0-0]),"))ok=1; # 11.1CT if(egrep(string:os, pattern:"(^|\s+)(11\.1\([0-9]*\)|11\.1)CT[0-9]*,"))ok=1; # 11.1IA if(egrep(string:os, pattern:"(^|\s+)((11\.1\(([0-9]|[1-1][0-9]|2[0-7])\)|11\.1)IA[0-9]*|11\.1\(28\)IA[0-0]),"))ok=1; # 11.2 if(egrep(string:os, pattern:"(^|\s+)(11\.2\(([0-9]|[1-1][0-9]|2[0-4])\)|11\.2),"))ok=1; # 11.2BC if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)BC[0-9]*,"))ok=1; # 11.2F if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)F[0-9]*,"))ok=1; # 11.2GS if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)GS[0-9]*,"))ok=1; # 11.2P if(egrep(string:os, pattern:"(^|\s+)(11\.2\(([0-9]|[1-1][0-9]|2[0-4])\)|11\.2)P[0-9]*,"))ok=1; # 11.2SA if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)SA[0-9]*,"))ok=1; # 11.2WA3 if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)WA3[0-9]*,"))ok=1; # 11.2XA if(egrep(string:os, pattern:"(^|\s+)(11\.2\([0-9]*\)|11\.2)XA[0-9]*,"))ok=1; # 11.3 if(egrep(string:os, pattern:"(^|\s+)(11\.3\(([0-9]|1[0-0])\)|11\.3),"))ok=1; # 11.3AA if(egrep(string:os, pattern:"(^|\s+)(11\.3\(([0-9]|1[0-0])\)|11\.3)AA[0-9]*,"))ok=1; # 11.3DA if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)DA[0-9]*,"))ok=1; # 11.3DB if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)DB[0-9]*,"))ok=1; # 11.3HA if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)HA[0-9]*,"))ok=1; # 11.3MA if(egrep(string:os, pattern:"(^|\s+)((11\.3\([0-0]\)|11\.3)MA[0-9]*|11\.3\(1\)MA[0-7]),"))ok=1; # 11.3NA if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)NA[0-9]*,"))ok=1; # 11.3T if(egrep(string:os, pattern:"(^|\s+)((11\.3\(([0-9]|1[0-0])\)|11\.3)T[0-9]*|11\.3\(11\)T[0-0]),"))ok=1; # 11.3WA4 if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)WA4[0-9]*,"))ok=1; # 11.3XA if(egrep(string:os, pattern:"(^|\s+)(11\.3\([0-9]*\)|11\.3)XA[0-9]*,"))ok=1; # 12.0 if(egrep(string:os, pattern:"(^|\s+)(12\.0\(([0-9]|1[0-4])\)|12\.0),"))ok=1; # 12.0DA if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)DA[0-9]*,"))ok=1; # 12.0DB if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)DB[0-9]*,"))ok=1; # 12.0DC if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)DC[0-9]*,"))ok=1; # 12.0S if(egrep(string:os, pattern:"(^|\s+)((12\.0\(([0-9]|1[0-3])\)|12\.0)S[0-9]*|12\.0\(14\)S[0-0]),"))ok=1; # 12.0SC if(egrep(string:os, pattern:"(^|\s+)((12\.0\(([0-9]|1[0-4])\)|12\.0)SC[0-9]*|12\.0\(15\)SC[0-0]),"))ok=1; # 12.0SL if(egrep(string:os, pattern:"(^|\s+)((12\.0\(([0-9]|1[0-3])\)|12\.0)SL[0-9]*|12\.0\(14\)SL[0-0]),"))ok=1; # 12.0ST if(egrep(string:os, pattern:"(^|\s+)((12\.0\(([0-9]|1[0-0])\)|12\.0)ST[0-9]*|12\.0\(11\)ST[0-1]),"))ok=1; # 12.0SX if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)SX[0-9]*,"))ok=1; # 12.0T if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)T[0-9]*,"))ok=1; # 12.0W5 if(egrep(string:os, pattern:"(^|\s+)(12\.0\(([0-9]|1[0-2])\)|12\.0)W5[0-9]*,"))ok=1; # 12.0WT if(egrep(string:os, pattern:"(^|\s+)((12\.0\(([0-9]|1[0-2])\)|12\.0)WT[0-9]*|12\.0\(13\)WT[0-5]),"))ok=1; # 12.0XA if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XA[0-9]*,"))ok=1; # 12.0XB if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XB[0-9]*,"))ok=1; # 12.0XC if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XC[0-9]*,"))ok=1; # 12.0XD if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XD[0-9]*,"))ok=1; # 12.0XE if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XE[0-9]*,"))ok=1; # 12.0XF if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XF[0-9]*,"))ok=1; # 12.0XG if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XG[0-9]*,"))ok=1; # 12.0XH if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XH[0-9]*,"))ok=1; # 12.0XI if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XI[0-9]*,"))ok=1; # 12.0XJ if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XJ[0-9]*,"))ok=1; # 12.0XK if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XK[0-9]*,"))ok=1; # 12.0XL if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XL[0-9]*,"))ok=1; # 12.0XM if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XM[0-9]*,"))ok=1; # 12.0XN if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XN[0-9]*,"))ok=1; # 12.0XP if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XP[0-9]*,"))ok=1; # 12.0XQ if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XQ[0-9]*,"))ok=1; # 12.0QR if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)QR[0-9]*,"))ok=1; # 12.0XS if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XS[0-9]*,"))ok=1; # 12.0XU if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XU[0-9]*,"))ok=1; # 12.0XV if(egrep(string:os, pattern:"(^|\s+)(12\.0\([0-9]*\)|12\.0)XV[0-9]*,"))ok=1; # 12.1 if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-6]\)|12\.1),"))ok=1; # 12.1AA if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-6]\)|12\.1)AA[0-9]*,"))ok=1; # 12.1DA if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-5]\)|12\.1)DA[0-9]*,"))ok=1; # 12.1CD if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-3]\)|12\.1)CD[0-9]*,"))ok=1; # 12.DB if(egrep(string:os, pattern:"(^|\s+)(12\.\([0-4]\)|12\.)DB[0-9]*,"))ok=1; # 12.1DC if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-4]\)|12\.1)DC[0-9]*,"))ok=1; # 12.1E if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-5]\)|12\.1)E[0-9]*,"))ok=1; # 12.1EC if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-5]\)|12\.1)EC[0-9]*,"))ok=1; # 12.1EX if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-4]\)|12\.1)EX[0-9]*,"))ok=1; # 12.1T if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)T[0-9]*|12\.1\(5\)T[0-4]),"))ok=1; # 12.1XA if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XA[0-9]*,"))ok=1; # 12.1XB if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XB[0-9]*,"))ok=1; # 12.1XC if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XC[0-9]*,"))ok=1; # 12.1XD if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XD[0-9]*,"))ok=1; # 12.1XE if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XE[0-9]*,"))ok=1; # 12.1XF if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XF[0-9]*,"))ok=1; # 12.1XG if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XG[0-9]*,"))ok=1; # 12.1XH if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XH[0-9]*,"))ok=1; # 12.1XI if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XI[0-9]*,"))ok=1; # 12.1XJ if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XJ[0-9]*,"))ok=1; # 12.1XK if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XK[0-9]*,"))ok=1; # 12.1XL if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XL[0-9]*,"))ok=1; # 12.1XM if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-9]*\)|12\.1)XM[0-9]*,"))ok=1; # 12.1XP if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-2]\)|12\.1)XP[0-9]*|12\.1\(3\)XP[0-2]),"))ok=1; # 12.1XQ if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-2]\)|12\.1)XQ[0-9]*|12\.1\(3\)XQ[0-2]),"))ok=1; # 12.1XR if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XR[0-9]*|12\.1\(5\)XR[0-0]),"))ok=1; # 12.1XT if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-2]\)|12\.1)XT[0-9]*|12\.1\(3\)XT[0-0]),"))ok=1; # 12.1XU if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XU[0-9]*|12\.1\(5\)XU[0-0]),"))ok=1; # 12.1XV if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XV[0-9]*|12\.1\(5\)XV[0-0]),"))ok=1; # 12.1XW if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XW[0-9]*|12\.1\(5\)XW[0-1]),"))ok=1; # 12.1XY if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XY[0-9]*|12\.1\(5\)XY[0-3]),"))ok=1; # 12.1XZ if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)XZ[0-9]*|12\.1\(5\)XZ[0-1]),"))ok=1; # 12.1YA if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)YA[0-9]*|12\.1\(5\)YA[0-0]),"))ok=1; # 12.1YB if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-4]\)|12\.1)YB[0-9]*,"))ok=1; # 12.1YC if(egrep(string:os, pattern:"(^|\s+)((12\.1\([0-4]\)|12\.1)YC[0-9]*|12\.1\(5\)YC[0-0]),"))ok=1; # 12.1YD if(egrep(string:os, pattern:"(^|\s+)(12\.1\([0-4]\)|12\.1)YD[0-9]*,"))ok=1; #---------------------------------------------- if(ok)security_hole(port:161, proto:"udp");
NASL family CISCO NASL id CISCO-SA-20010301-IOS-TCP-ISN-RANDOMHTTP.NASL description Cisco IOS Software contains a flaw that permits the successful prediction of TCP Initial Sequence Numbers. This vulnerability is present in all released versions of Cisco IOS software running on Cisco routers and switches. It only affects the security of TCP connections that originate or terminate on the affected Cisco device itself; it does not apply to TCP traffic forwarded through the affected device in transit between two other hosts. To remove the vulnerability, Cisco is offering free software upgrades for all affected platforms. The defect is described in DDTS record CSCds04747. Workarounds are available that limit or deny successful exploitation of the vulnerability by filtering traffic containing forged IP source addresses at the perimeter of a network or directly on individual devices. last seen 2020-06-01 modified 2020-06-02 plugin id 48953 published 2010-09-01 reporter This script is (C) 2010-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/48953 title Cisco IOS Software TCP Initial Sequence Number Randomization Improvements - Cisco Systems code # # (C) Tenable Network Security, Inc. # # Security advisory is (C) CISCO, Inc. # See https://www.cisco.com/en/US/products/products_security_advisory09186a00800b1396.shtml if (NASL_LEVEL < 3000) exit(0); include("compat.inc"); if (description) { script_id(48953); script_version("1.12"); script_cve_id("CVE-2001-0288"); script_bugtraq_id(2682); script_xref(name:"CERT", value:"498440"); script_xref(name:"CISCO-BUG-ID", value:"CSCds04747"); script_xref(name:"CISCO-SA", value:"cisco-sa-20010301-ios-tcp-isn-random"); script_name(english:"Cisco IOS Software TCP Initial Sequence Number Randomization Improvements - Cisco Systems"); script_set_attribute(attribute:"synopsis", value: "The remote device is missing a vendor-supplied security patch" ); script_set_attribute(attribute:"description", value: 'Cisco IOS Software contains a flaw that permits the successful prediction of TCP Initial Sequence Numbers. This vulnerability is present in all released versions of Cisco IOS software running on Cisco routers and switches. It only affects the security of TCP connections that originate or terminate on the affected Cisco device itself; it does not apply to TCP traffic forwarded through the affected device in transit between two other hosts. To remove the vulnerability, Cisco is offering free software upgrades for all affected platforms. The defect is described in DDTS record CSCds04747. Workarounds are available that limit or deny successful exploitation of the vulnerability by filtering traffic containing forged IP source addresses at the perimeter of a network or directly on individual devices. '); # https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20010301-ios-tcp-isn-random script_set_attribute(attribute:"see_also", value: "http://www.nessus.org/u?98df6997"); # https://www.cisco.com/en/US/products/products_security_advisory09186a00800b1396.shtml script_set_attribute(attribute:"see_also", value: "http://www.nessus.org/u?4b55ca71"); script_set_attribute(attribute:"solution", value: "Apply the relevant patch referenced in Cisco Security Advisory cisco-sa-20010301-ios-tcp-isn-random."); 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:POC/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available"); script_set_attribute(attribute:"exploit_available", value:"true"); 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/03/01"); script_set_attribute(attribute:"patch_publication_date", value: "2001/03/01"); 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.0 if (deprecated_version(version, "11.0")) { security_hole(port:0, extra: '\nUpdate to 11.1(22a) or later\n'); exit(0); } # Affected: 11.1 if (check_release(version: version, patched: make_list("11.1(24a)") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.1AA if (deprecated_version(version, "11.1AA")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 11.1CA if (check_release(version: version, patched: make_list("11.1(36)CA1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.1CC if (check_release(version: version, patched: make_list("11.1(36)CC1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.1CT if (deprecated_version(version, "11.1CT")) { security_hole(port:0, extra: '\nUpdate to 12.0(11)ST2 or later\n'); exit(0); } # Affected: 11.1IA if (check_release(version: version, patched: make_list("11.1(28a)IA1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.2 if (check_release(version: version, patched: make_list("11.2(25)"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.2BC if (deprecated_version(version, "11.2BC")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 11.2F if (deprecated_version(version, "11.2F")) { security_hole(port:0, extra: '\nNo updates are scheduled for 11.2F. Upgrade to a supported version\n'); exit(0); } # Affected: 11.2GS if (deprecated_version(version, "11.2GS")) { security_hole(port:0, extra: '\nUpdate to 12.0(15)S1 or later\n'); exit(0); } # Affected: 11.2P if (check_release(version: version, patched: make_list("11.2(25)P"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.2SA if (deprecated_version(version, "11.2SA")) { security_hole(port:0, extra: '\nUpgrade to 12.0WC\n'); exit(0); } # Affected: 11.2WA3 if (version == '11.2WA3') { security_hole(port:0, extra: '\nUpdate to 12.0(10)W(18b) or later\n'); exit(0); } # Affected: 11.2(4)XA if (version == '11.2(4)XA' || version == '11.2(9)XA') { security_hole(port:0, extra: '\nUpdate to 11.2(25)P or later\n'); exit(0); } # Affected: 11.3 if (check_release(version: version, patched: make_list("11.3(11b)") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3AA if (check_release(version: version, patched: make_list("11.3(11a)AA") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3DA if (deprecated_version(version, "11.3DA")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)DA1 or later\n'); exit(0); } # Affected: 11.3DB if (deprecated_version(version, "11.3DB")) { security_hole(port:0, extra: '\nUpdate to 12.1(4)DB1 or later\n'); exit(0); } # Affected: 11.3HA if (deprecated_version(version, "11.3HA")) { security_hole(port:0, extra: '\nNo updates are scheduled for 11.3HA. Upgrade to a supported version\n'); exit(0); } # Affected: 11.3MA if (check_release(version: version, patched: make_list("11.3(1)MA8") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3NA if (deprecated_version(version, "11.3NA")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 11.3T if (check_release(version: version, patched: make_list("11.3(11b)T1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 11.3WA4 if (version == '11.3WA4') { security_hole(port:0, extra: '\nUpdate to 12.0(10)W(18b) or later\n'); exit(0); } # Affected: 11.3(2)XA if (version == '11.3(2)XA') { security_hole(port:0, extra: '\nUpdate to 11.3(11b)T1 or later\n'); exit(0); } # Affected: 12.0 if (check_release(version: version, patched: make_list("12.0(15)") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0S if (check_release(version: version, patched: make_list("12.0(14)S1", "12.0(14.6)S") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0DA if (deprecated_version(version, "12.0DA")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)DA1 or later\n'); exit(0); } # Affected: 12.0DB if (deprecated_version(version, "12.0DB")) { security_hole(port:0, extra: '\nUpdate to 12.1(4)DB1 or later\n'); exit(0); } # Affected: 12.0DC if (deprecated_version(version, "12.0DC")) { security_hole(port:0, extra: '\nUpdate to 12.1(4)DA2 or later\n'); exit(0); } # Affected: 12.0S if (check_release(version: version, patched: make_list("12.0(14)S1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0SC if (check_release(version: version, patched: make_list("12.0(15)SC1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0SL if (check_release(version: version, patched: make_list("12.0(14)SL1") )) { security_hole(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(11)ST2") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0SX if (deprecated_version(version, "12.0SX")) { security_hole(port:0, extra: '\nUpdate to 12.0(5c)E8 or later\n'); exit(0); } # Affected: 12.0T if (deprecated_version(version, "12.0T")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0W5 if (check_release(version: version, patched: make_list("12.0(13)W5(19c)") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0WT if (check_release(version: version, patched: make_list("12.0(13)WT6(1)") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0XA if (deprecated_version(version, "12.0XA")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XB if (deprecated_version(version, "12.0XB")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XC if (deprecated_version(version, "12.0XC")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XD if (deprecated_version(version, "12.0XD")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XE if (deprecated_version(version, "12.0XE")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)E8 or later\n'); exit(0); } # Affected: 12.0XF if (deprecated_version(version, "12.0XF")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XG if (deprecated_version(version, "12.0XG")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XH if (check_release(version: version, patched: make_list("12.0(4)XH5") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0XI if (deprecated_version(version, "12.0XI")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XJ if (deprecated_version(version, "12.0XJ")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XK if (check_release(version: version, patched: make_list("12.0(7)XK4") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0XL if (deprecated_version(version, "12.0XL")) { security_hole(port:0, extra: '\nUpdate to 12.0(4)XH5 or later\n'); exit(0); } # Affected: 12.0XM if (check_release(version: version, patched: make_list("12.0(5)XM1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.0XN if (deprecated_version(version, "12.0XN")) { security_hole(port:0, extra: '\nNo updates are scheduled for 12.0XN. Upgrade to a supported version\n'); exit(0); } # Affected: 12.0XP if (deprecated_version(version, "12.0XP")) { security_hole(port:0, extra: '\nUpdate to 12.1WC\n'); exit(0); } # Affected: 12.0XQ if (deprecated_version(version, "12.0XQ")) { security_hole(port:0, extra: '\nUpdate to 12.1(7) or later\n'); exit(0); } # Affected: 12.0XR if (deprecated_version(version, "12.0XR")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.0XS if (deprecated_version(version, "12.0XS")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)E8 or later\n'); exit(0); } # Affected: 12.0XU if (deprecated_version(version, "12.0XU")) { security_hole(port:0, extra: '\nUpdate to 12.1WC\n'); exit(0); } # Affected: 12.0XV if (deprecated_version(version, "12.0XV")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1 if (check_release(version: version, patched: make_list("12.1(5c)"))) { security_hole(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(7)AA"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1DA if (check_release(version: version, patched: make_list("12.1(5)DA1"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1CX if (check_release(version: version, patched: make_list("12.1(4)CX"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1DB if (check_release(version: version, patched: make_list("12.1(4)DB1"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1DC if (check_release(version: version, patched: make_list("12.1(4)DC2"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1E if (check_release(version: version, patched: make_list("12.1(5.6)E"))) { security_hole(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(4.5)EC"))) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1EX if (check_release(version: version, patched: make_list("12.1(5c)EX") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1T if (check_release(version: version, patched: make_list("12.1(5)T5") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XA if (deprecated_version(version, "12.1XA")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XB if (deprecated_version(version, "12.1XB")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XC if (deprecated_version(version, "12.1XC")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XD if (deprecated_version(version, "12.1XD")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XE if (deprecated_version(version, "12.1XE")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XF if (check_release(version: version, patched: make_list("12.1(2)XF3") )) { security_hole(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)XG3") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XH if (check_release(version: version, patched: make_list("12.1(2)XH5") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XI if (check_release(version: version, patched: make_list("12.1(3a)XI6") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XJ if (deprecated_version(version, "12.1XJ")) { security_hole(port:0, extra: '\nNo updates are scheduled for 12.1XJ. Upgrade to a supported version.\n'); exit(0); } # Affected: 12.1XK if (deprecated_version(version, "12.1XK")) { security_hole(port:0, extra: '\nUpdate to 12.1(5)T5 or later\n'); exit(0); } # Affected: 12.1XL if (check_release(version: version, patched: make_list("12.1(3)XL1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XM if (check_release(version: version, patched: make_list("12.1(5)XM1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XP if (check_release(version: version, patched: make_list("12.1(3)XP3") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XQ if (check_release(version: version, patched: make_list("12.1(3)XQ3") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XR if (check_release(version: version, patched: make_list("12.1(5)XR1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XS if (check_release(version: version, patched: make_list("12.1(5)XS") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XT if (check_release(version: version, patched: make_list("12.1(3)XT1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XU if (check_release(version: version, patched: make_list("12.1(5)XU1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XV if (check_release(version: version, patched: make_list("12.1(5)XV1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XW if (check_release(version: version, patched: make_list("12.1(5)XW2") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XX if (check_release(version: version, patched: make_list("12.1(5)XX3") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XY if (check_release(version: version, patched: make_list("12.1(5)XY4") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1XZ if (check_release(version: version, patched: make_list("12.1(5)XZ2") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YA if (check_release(version: version, patched: make_list("12.1(5)YA1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YB if (check_release(version: version, patched: make_list("12.1(5)YB") )) { security_hole(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)YC1") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } # Affected: 12.1YD if (check_release(version: version, patched: make_list("12.1(5)YD") )) { security_hole(port:0, extra: '\nUpdate to ' + patch_update + ' or later\n'); exit(0); } exit(0, "The remote host is not affected");
NASL family General NASL id TCP_SEQ.NASL description The remote host has predictable TCP sequence numbers. An attacker may use this flaw to establish spoofed TCP connections to this host. last seen 2020-06-01 modified 2020-06-02 plugin id 10443 published 2003-03-03 reporter This script is Copyright (C) 2003-2019 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/10443 title TCP/IP Predictable ISN (Initial Sequence Number) Generation Weakness code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(10443); script_version("1.31"); script_cvs_date("Date: 2019/03/06 18:38:55"); script_cve_id( "CVE-1999-0077", "CVE-2004-0641", "CVE-2001-0162", "CVE-2001-0163", "CVE-2001-0751", "CVE-2001-0288", "CVE-2001-1104", "CVE-2000-0916" ); script_bugtraq_id(107, 670, 3098, 10881); script_name(english:"TCP/IP Predictable ISN (Initial Sequence Number) Generation Weakness"); script_summary(english:"TCP SEQ"); script_set_attribute(attribute:"synopsis", value: "It is possible to predict TCP/IP Initial Sequence Numbers for the remote host."); script_set_attribute(attribute:"description", value: "The remote host has predictable TCP sequence numbers. An attacker may use this flaw to establish spoofed TCP connections to this host."); script_set_attribute(attribute:"solution", value:"Contact your vendor for a patch."); 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:POC/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available"); script_set_attribute(attribute:"exploit_available", value:"true"); script_set_attribute(attribute:"vuln_publication_date", value:"1995/01/01"); script_set_attribute(attribute:"plugin_publication_date", value:"2003/03/03"); script_set_attribute(attribute:"potential_vulnerability", value:"true"); script_set_attribute(attribute:"plugin_type", value:"remote"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2003-2019 Tenable Network Security, Inc."); script_family(english:"General"); script_require_keys("Settings/ParanoidReport"); exit(0); } include("audit.inc"); include("global_settings.inc"); if (report_paranoia < 2) audit(AUDIT_PARANOID); if ( TARGET_IS_IPV6 ) exit(1, "This check is not implemented for IPv6 hosts."); MAX_RETRIES = 5; function probe(port) { local_var flags, sport, ip, tcp, filter, i, rep, seq; ip = forge_ip_packet( ip_hl :5, ip_v :4, ip_tos :0, ip_len :20, ip_id :31338, ip_off :0, ip_ttl :64, ip_p :IPPROTO_TCP, ip_src :compat::this_host() ); sport = (rand() % 60000) + 1024; tcp = forge_tcp_packet(ip:ip, th_sport: sport, th_dport: port, th_flags:TH_SYN, th_seq: rand(), th_ack: 0, th_x2: 0, th_off: 5, th_win: 8192, th_urp: 0); # Note: these ports look backwards because we're capturing the response filter = "tcp and src host " + get_host_ip() + " and src port " + port + " and dst port " + sport; for ( i = 0 ; i < MAX_RETRIES ; i ++ ) { rep = send_packet(tcp, pcap_active:TRUE, pcap_filter:filter, pcap_timeout:1); if ( rep ) break; } if ( ! rep ) exit(1, "No response to the probe."); flags = get_tcp_element(tcp:rep, element:"th_flags"); if ( flags != (TH_SYN|TH_ACK)) exit(1, "The server returned an unexpected packet."); seq = get_tcp_element(tcp:rep, element:"th_seq"); return seq; } # Get an open port port = get_host_open_port(); if (isnull(port) || !port) exit(1, "Couldn't find an open port to check."); for (mu=0; mu<5; mu++) { seqs = make_list(); for ( i = 0 ; i < 5 ; i ++ ) { seqs[i] = probe(port:port); } diffs = make_list(); for ( i = 1; i < 5 ; i ++ ) { diffs[i - 1] = seqs[i] - seqs[i - 1]; # Ugly hack, as NASL does not handle unsigned ints if ( diffs[i - 1] < 0 ) diffs[i - 1] *= -1; } a = diffs[0]; for ( i = 1 ; i < 4 ; i ++ ) { b = diffs[i]; if ( a < b ) { c = a; a = b; b = c; } else { while ( b) { c = a % b; a = b; b = c; } } } if (mu == 0) { results = make_list(a); } else { results = make_list(results, a); } } if ( (results[0] == results[1]) && (results[0] == results[2]) && (results[0] == results[3]) && (results[0] == results[4]) ) security_hole(0); else exit(0, "Host does not appear to be vulnerable.");