Cisco IOS Software Authentication Proxy Vulnerability - Cisco Systems

2010-09-01T00:00:00
ID CISCO-SA-20090923-AUTH-PROXYHTTP.NASL
Type nessus
Reporter Tenable
Modified 2018-07-02T00:00:00

Description

Cisco IOS Software configured with Authentication Proxy for HTTP(S), Web Authentication or the consent feature, contains a vulnerability that may allow an unauthenticated session to bypass the authentication proxy server or bypass the consent webpage. Cisco has released free software updates that address this vulnerability. There are no workarounds that mitigate this vulnerability.

                                        
                                            #TRUSTED 624814240a240981b831c6844150ce3320853530e1385539176c2996cf8bba6b3ef4d8754f46b25143bf1533e7e5ce401041c96e4ff8c75834d80c7ea4f15567f41be776f6a975522cf0c5ec6c7ed5036a1f5529de0926e12cdb546ffee4b380e83aadb0500b4bd55a83a1cfa5031ccb707c6943d03a1b079731a719f884915e4707e0e283a76bbdc0277dc108a70aa993ed35d44e4378922f85bee9d8af1f67299a9a1c68565cb6b8854fc95ac2ea65c06aae929db5f5ae31856fe38562074b3b1921b2c57e783ce0edd5dce64213bb08eab95d323e9f19aa61ca9b24baed95eb43274eefbf00e4ec108752f6edda05b912536a4621bbc54ede69db2a43e2067de2a30202ec145f6703c1a4c98f0291d21cff1b6b17da77fcc70eeac77b1f77ad3738d3786b291f2baf7b8395f827f61eaf9d9cece361c75795913a79e5e9d74328407a23336a3c8b52f194dfcf678956b6e1deeb02db989b09fd87e283a32234abfb2a1743977b8541e0f7ee5a0840a06c2013efd1dd107081cb9e7ea4e95f5ac2e4eef09f205e950c64bade456867100bf75505bd3c0764869e8cd04a1ca9530657f5be9dba0aa2d8ed7373a1f57fbd23dccddc3bfddbcbd07562174f64e2711629e83b9233bcb9ad242c143a68ffb0bc43f4914cbacb46c3924b54f14b22d5835e8fe2ce66f67d3904b80bf7e1d8e71ee396332894887948095673b6cc2b
#
# (C) Tenable Network Security, Inc.
#
# Security advisory is (C) CISCO, Inc.
# See http://www.cisco.com/en/US/products/products_security_advisory09186a0080af8132.shtml

if (NASL_LEVEL < 3000) exit(0);

include("compat.inc");

if (description)
{
 script_id(49040);
 script_version("1.20");
 script_set_attribute(attribute:"plugin_modification_date", value:"2018/07/02");
 script_cve_id("CVE-2009-2863");
 script_bugtraq_id(36491);
 script_xref(name:"CISCO-BUG-ID", value:"CSCsy15227");
 script_xref(name:"CISCO-SA", value:"cisco-sa-20090923-auth-proxy");
 script_name(english:"Cisco IOS Software Authentication Proxy Vulnerability - Cisco Systems");
 script_summary(english:"Checks the IOS version.");
 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 configured with Authentication Proxy for HTTP(S),
Web Authentication or the consent feature, contains a vulnerability
that may allow an unauthenticated session to bypass the authentication
proxy server or bypass the consent webpage.
Cisco has released free software updates that address this
vulnerability.
There are no workarounds that mitigate this vulnerability.
');
 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?ecc40a34");
 # http://www.cisco.com/en/US/products/products_security_advisory09186a0080af8132.shtml
 script_set_attribute(attribute:"see_also", value: "http://www.nessus.org/u?51a6d5db");
 script_set_attribute(attribute:"solution", value:
"Apply the relevant patch referenced in Cisco Security Advisory
cisco-sa-20090923-auth-proxy.");
 script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:N/A:N");
 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_cwe_id(287);
 script_set_attribute(attribute:"plugin_type", value:"combined");
 script_set_attribute(attribute:"cpe", value:"cpe:/o:cisco:ios");

 script_set_attribute(attribute:"vuln_publication_date", value:"2009/09/23");
 script_set_attribute(attribute:"patch_publication_date", value:"2009/09/23");
 script_set_attribute(attribute:"plugin_publication_date", value:"2010/09/01");

 script_end_attributes();
 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("audit.inc");
include("cisco_func.inc");
include("cisco_kb_cmd_func.inc");

flag = 0;
override = 0;
version = get_kb_item_or_exit("Host/Cisco/IOS/Version");

if (version == '12.4(22)YB1') flag++;
else if (version == '12.4(22)YB') flag++;
else if (version == '12.4(20)YA3') flag++;
else if (version == '12.4(20)YA2') flag++;
else if (version == '12.4(20)YA1') flag++;
else if (version == '12.4(20)YA') flag++;
else if (version == '12.4(15)XZ2') flag++;
else if (version == '12.4(15)XZ1') flag++;
else if (version == '12.4(15)XZ') flag++;
else if (version == '12.4(15)XY5') flag++;
else if (version == '12.4(15)XY4') flag++;
else if (version == '12.4(15)XY3') flag++;
else if (version == '12.4(15)XY2') flag++;
else if (version == '12.4(15)XY1') flag++;
else if (version == '12.4(15)XY') flag++;
else if (version == '12.4(11)XW9') flag++;
else if (version == '12.4(11)XW8') flag++;
else if (version == '12.4(11)XW7') flag++;
else if (version == '12.4(11)XW6') flag++;
else if (version == '12.4(11)XW5') flag++;
else if (version == '12.4(11)XW4') flag++;
else if (version == '12.4(11)XW3') flag++;
else if (version == '12.4(11)XW2') flag++;
else if (version == '12.4(11)XW10') flag++;
else if (version == '12.4(11)XW1') flag++;
else if (version == '12.4(11)XW') flag++;
else if (version == '12.4(11)XV1') flag++;
else if (version == '12.4(11)XV') flag++;
else if (version == '12.4(6)XT2') flag++;
else if (version == '12.4(6)XT1') flag++;
else if (version == '12.4(6)XT') flag++;
else if (version == '12.4(14)XK') flag++;
else if (version == '12.4(11)XJ4') flag++;
else if (version == '12.4(11)XJ3') flag++;
else if (version == '12.4(11)XJ2') flag++;
else if (version == '12.4(11)XJ') flag++;
else if (version == '12.4(15)XF') flag++;
else if (version == '12.4(6)XE3') flag++;
else if (version == '12.4(6)XE2') flag++;
else if (version == '12.4(6)XE1') flag++;
else if (version == '12.4(6)XE') flag++;
else if (version == '12.4(4)XD9') flag++;
else if (version == '12.4(4)XD8') flag++;
else if (version == '12.4(4)XD7') flag++;
else if (version == '12.4(4)XD5') flag++;
else if (version == '12.4(4)XD4') flag++;
else if (version == '12.4(4)XD2') flag++;
else if (version == '12.4(4)XD12') flag++;
else if (version == '12.4(4)XD11') flag++;
else if (version == '12.4(4)XD10') flag++;
else if (version == '12.4(4)XD1') flag++;
else if (version == '12.4(4)XD') flag++;
else if (version == '12.4(4)XC7') flag++;
else if (version == '12.4(4)XC6') flag++;
else if (version == '12.4(4)XC5') flag++;
else if (version == '12.4(4)XC4') flag++;
else if (version == '12.4(4)XC3') flag++;
else if (version == '12.4(4)XC2') flag++;
else if (version == '12.4(4)XC1') flag++;
else if (version == '12.4(4)XC') flag++;
else if (version == '12.4(2)XA2') flag++;
else if (version == '12.4(2)XA1') flag++;
else if (version == '12.4(2)XA') flag++;
else if (version == '12.4(24)T') flag++;
else if (version == '12.4(22)T1') flag++;
else if (version == '12.4(22)T') flag++;
else if (version == '12.4(20)T2') flag++;
else if (version == '12.4(20)T1') flag++;
else if (version == '12.4(20)T') flag++;
else if (version == '12.4(15)T8') flag++;
else if (version == '12.4(15)T7') flag++;
else if (version == '12.4(15)T6') flag++;
else if (version == '12.4(15)T5') flag++;
else if (version == '12.4(15)T4') flag++;
else if (version == '12.4(15)T3') flag++;
else if (version == '12.4(15)T2') flag++;
else if (version == '12.4(15)T1') flag++;
else if (version == '12.4(15)T') flag++;
else if (version == '12.4(11)T4') flag++;
else if (version == '12.4(11)T3') flag++;
else if (version == '12.4(11)T2') flag++;
else if (version == '12.4(11)T1') flag++;
else if (version == '12.4(11)T') flag++;
else if (version == '12.4(9)T7') flag++;
else if (version == '12.4(9)T6') flag++;
else if (version == '12.4(9)T5') flag++;
else if (version == '12.4(9)T4') flag++;
else if (version == '12.4(9)T3') flag++;
else if (version == '12.4(9)T2') flag++;
else if (version == '12.4(9)T1') flag++;
else if (version == '12.4(9)T') flag++;
else if (version == '12.4(6)T9') flag++;
else if (version == '12.4(6)T8') flag++;
else if (version == '12.4(6)T7') flag++;
else if (version == '12.4(6)T6') flag++;
else if (version == '12.4(6)T5') flag++;
else if (version == '12.4(6)T4') flag++;
else if (version == '12.4(6)T3') flag++;
else if (version == '12.4(6)T2') flag++;
else if (version == '12.4(6)T11') flag++;
else if (version == '12.4(6)T10') flag++;
else if (version == '12.4(6)T1') flag++;
else if (version == '12.4(6)T') flag++;
else if (version == '12.4(4)T8') flag++;
else if (version == '12.4(4)T7') flag++;
else if (version == '12.4(4)T6') flag++;
else if (version == '12.4(4)T5') flag++;
else if (version == '12.4(4)T4') flag++;
else if (version == '12.4(4)T3') flag++;
else if (version == '12.4(4)T2') flag++;
else if (version == '12.4(4)T1') flag++;
else if (version == '12.4(4)T') flag++;
else if (version == '12.4(2)T6') flag++;
else if (version == '12.4(2)T5') flag++;
else if (version == '12.4(2)T4') flag++;
else if (version == '12.4(2)T3') flag++;
else if (version == '12.4(2)T2') flag++;
else if (version == '12.4(2)T1') flag++;
else if (version == '12.4(2)T') flag++;
else if (version == '12.4(19)MR') flag++;
else if (version == '12.4(16)MR2') flag++;
else if (version == '12.4(16)MR1') flag++;
else if (version == '12.4(22)GC1') flag++;
else if (version == '12.4(25)') flag++;
else if (version == '12.4(23)') flag++;
else if (version == '12.4(21a)') flag++;
else if (version == '12.4(21)') flag++;
else if (version == '12.4(19b)') flag++;
else if (version == '12.4(19a)') flag++;
else if (version == '12.4(19)') flag++;
else if (version == '12.4(18e)') flag++;
else if (version == '12.4(18c)') flag++;
else if (version == '12.4(18b)') flag++;
else if (version == '12.4(18a)') flag++;
else if (version == '12.4(18)') flag++;
else if (version == '12.4(17b)') flag++;
else if (version == '12.4(17a)') flag++;
else if (version == '12.4(17)') flag++;
else if (version == '12.4(16b)') flag++;
else if (version == '12.4(16a)') flag++;
else if (version == '12.4(16)') flag++;
else if (version == '12.4(13f)') flag++;
else if (version == '12.4(13e)') flag++;
else if (version == '12.4(13d)') flag++;
else if (version == '12.4(13c)') flag++;
else if (version == '12.4(13b)') flag++;
else if (version == '12.4(13a)') flag++;
else if (version == '12.4(13)') flag++;
else if (version == '12.4(12c)') flag++;
else if (version == '12.4(12b)') flag++;
else if (version == '12.4(12a)') flag++;
else if (version == '12.4(12)') flag++;
else if (version == '12.4(10c)') flag++;
else if (version == '12.4(10b)') flag++;
else if (version == '12.4(10a)') flag++;
else if (version == '12.4(10)') flag++;
else if (version == '12.4(8d)') flag++;
else if (version == '12.4(8c)') flag++;
else if (version == '12.4(8b)') flag++;
else if (version == '12.4(8a)') flag++;
else if (version == '12.4(8)') flag++;
else if (version == '12.4(7h)') flag++;
else if (version == '12.4(7g)') flag++;
else if (version == '12.4(7f)') flag++;
else if (version == '12.4(7e)') flag++;
else if (version == '12.4(7d)') flag++;
else if (version == '12.4(7c)') flag++;
else if (version == '12.4(7b)') flag++;
else if (version == '12.4(7a)') flag++;
else if (version == '12.4(7)') flag++;
else if (version == '12.4(5c)') flag++;
else if (version == '12.4(5b)') flag++;
else if (version == '12.4(5a)') flag++;
else if (version == '12.4(5)') flag++;
else if (version == '12.4(3j)') flag++;
else if (version == '12.4(3i)') flag++;
else if (version == '12.4(3h)') flag++;
else if (version == '12.4(3g)') flag++;
else if (version == '12.4(3f)') flag++;
else if (version == '12.4(3e)') flag++;
else if (version == '12.4(3d)') flag++;
else if (version == '12.4(3c)') flag++;
else if (version == '12.4(3b)') flag++;
else if (version == '12.4(3a)') flag++;
else if (version == '12.4(3)') flag++;
else if (version == '12.4(1c)') flag++;
else if (version == '12.4(1b)') flag++;
else if (version == '12.4(1a)') flag++;
else if (version == '12.4(1)') flag++;
else if (version == '12.3(8)ZA') flag++;
else if (version == '12.3(11)YZ2') flag++;
else if (version == '12.3(11)YZ1') flag++;
else if (version == '12.3(11)YZ') flag++;
else if (version == '12.3(14)YT1') flag++;
else if (version == '12.3(14)YT') flag++;
else if (version == '12.3(11)YS2') flag++;
else if (version == '12.3(11)YS1') flag++;
else if (version == '12.3(11)YS') flag++;
else if (version == '12.3(14)YM9') flag++;
else if (version == '12.3(14)YM8') flag++;
else if (version == '12.3(14)YM7') flag++;
else if (version == '12.3(14)YM6') flag++;
else if (version == '12.3(14)YM5') flag++;
else if (version == '12.3(14)YM4') flag++;
else if (version == '12.3(14)YM3') flag++;
else if (version == '12.3(14)YM2') flag++;
else if (version == '12.3(14)YM13') flag++;
else if (version == '12.3(14)YM12') flag++;
else if (version == '12.3(14)YM11') flag++;
else if (version == '12.3(14)YM10') flag++;
else if (version == '12.3(11)YK3') flag++;
else if (version == '12.3(11)YK2') flag++;
else if (version == '12.3(11)YK1') flag++;
else if (version == '12.3(11)YK') flag++;
else if (version == '12.3(8)YI3') flag++;
else if (version == '12.3(8)YI2') flag++;
else if (version == '12.3(8)YI1') flag++;
else if (version == '12.3(8)YH') flag++;
else if (version == '12.3(8)YG6') flag++;
else if (version == '12.3(8)YG5') flag++;
else if (version == '12.3(8)YG4') flag++;
else if (version == '12.3(8)YG3') flag++;
else if (version == '12.3(8)YG2') flag++;
else if (version == '12.3(8)YG1') flag++;
else if (version == '12.3(8)YG') flag++;
else if (version == '12.3(8)YD1') flag++;
else if (version == '12.3(8)YD') flag++;
else if (version == '12.3(8)YA1') flag++;
else if (version == '12.3(8)YA') flag++;
else if (version == '12.3(8)XX2d') flag++;
else if (version == '12.3(8)XX1') flag++;
else if (version == '12.3(8)XX') flag++;
else if (version == '12.3(7)XS2') flag++;
else if (version == '12.3(7)XS1') flag++;
else if (version == '12.3(7)XS') flag++;
else if (version == '12.3(7)XR7') flag++;
else if (version == '12.3(7)XR6') flag++;
else if (version == '12.3(7)XR5') flag++;
else if (version == '12.3(7)XR4') flag++;
else if (version == '12.3(7)XR3') flag++;
else if (version == '12.3(7)XR2') flag++;
else if (version == '12.3(7)XR') flag++;
else if (version == '12.3(4)XQ1') flag++;
else if (version == '12.3(4)XQ') flag++;
else if (version == '12.3(11)XL1') flag++;
else if (version == '12.3(11)XL') flag++;
else if (version == '12.3(4)XK4') flag++;
else if (version == '12.3(4)XK3') flag++;
else if (version == '12.3(4)XK2') flag++;
else if (version == '12.3(4)XK1') flag++;
else if (version == '12.3(4)XK') flag++;
else if (version == '12.3(4)XG5') flag++;
else if (version == '12.3(4)XG4') flag++;
else if (version == '12.3(4)XG3') flag++;
else if (version == '12.3(4)XG2') flag++;
else if (version == '12.3(4)XG1') flag++;
else if (version == '12.3(4)XG') flag++;
else if (version == '12.3(2)XF') flag++;
else if (version == '12.3(2)XE5') flag++;
else if (version == '12.3(2)XE4') flag++;
else if (version == '12.3(2)XE3') flag++;
else if (version == '12.3(2)XE2') flag++;
else if (version == '12.3(2)XE1') flag++;
else if (version == '12.3(2)XE') flag++;
else if (version == '12.3(4)XD4') flag++;
else if (version == '12.3(4)XD3') flag++;
else if (version == '12.3(4)XD2') flag++;
else if (version == '12.3(4)XD1') flag++;
else if (version == '12.3(4)XD') flag++;
else if (version == '12.3(2)XC3') flag++;
else if (version == '12.3(2)XC2') flag++;
else if (version == '12.3(2)XC1') flag++;
else if (version == '12.3(2)XC') flag++;
else if (version == '12.3(2)XA7') flag++;
else if (version == '12.3(2)XA6') flag++;
else if (version == '12.3(2)XA5') flag++;
else if (version == '12.3(2)XA4') flag++;
else if (version == '12.3(2)XA3') flag++;
else if (version == '12.3(2)XA2') flag++;
else if (version == '12.3(2)XA1') flag++;
else if (version == '12.3(2)XA') flag++;
else if (version == '12.3(4)TPC11b') flag++;
else if (version == '12.3(4)TPC11a') flag++;
else if (version == '12.3(14)T7') flag++;
else if (version == '12.3(14)T6') flag++;
else if (version == '12.3(14)T5') flag++;
else if (version == '12.3(14)T3') flag++;
else if (version == '12.3(14)T2') flag++;
else if (version == '12.3(14)T1') flag++;
else if (version == '12.3(14)T') flag++;
else if (version == '12.3(11)T9') flag++;
else if (version == '12.3(11)T8') flag++;
else if (version == '12.3(11)T7') flag++;
else if (version == '12.3(11)T6') flag++;
else if (version == '12.3(11)T5') flag++;
else if (version == '12.3(11)T4') flag++;
else if (version == '12.3(11)T3') flag++;
else if (version == '12.3(11)T2') flag++;
else if (version == '12.3(11)T11') flag++;
else if (version == '12.3(11)T10') flag++;
else if (version == '12.3(11)T') flag++;
else if (version == '12.3(8)T9') flag++;
else if (version == '12.3(8)T8') flag++;
else if (version == '12.3(8)T7') flag++;
else if (version == '12.3(8)T6') flag++;
else if (version == '12.3(8)T5') flag++;
else if (version == '12.3(8)T4') flag++;
else if (version == '12.3(8)T3') flag++;
else if (version == '12.3(8)T11') flag++;
else if (version == '12.3(8)T10') flag++;
else if (version == '12.3(8)T1') flag++;
else if (version == '12.3(8)T') flag++;
else if (version == '12.3(7)T9') flag++;
else if (version == '12.3(7)T8') flag++;
else if (version == '12.3(7)T7') flag++;
else if (version == '12.3(7)T6') flag++;
else if (version == '12.3(7)T4') flag++;
else if (version == '12.3(7)T3') flag++;
else if (version == '12.3(7)T2') flag++;
else if (version == '12.3(7)T12') flag++;
else if (version == '12.3(7)T11') flag++;
else if (version == '12.3(7)T10') flag++;
else if (version == '12.3(7)T1') flag++;
else if (version == '12.3(7)T') flag++;
else if (version == '12.3(4)T9') flag++;
else if (version == '12.3(4)T8') flag++;
else if (version == '12.3(4)T7') flag++;
else if (version == '12.3(4)T6') flag++;
else if (version == '12.3(4)T4') flag++;
else if (version == '12.3(4)T3') flag++;
else if (version == '12.3(4)T2') flag++;
else if (version == '12.3(4)T11') flag++;
else if (version == '12.3(4)T10') flag++;
else if (version == '12.3(4)T1') flag++;
else if (version == '12.3(4)T') flag++;
else if (version == '12.3(2)T9') flag++;
else if (version == '12.3(2)T8') flag++;
else if (version == '12.3(2)T7') flag++;
else if (version == '12.3(2)T6') flag++;
else if (version == '12.3(2)T5') flag++;
else if (version == '12.3(2)T4') flag++;
else if (version == '12.3(2)T3') flag++;
else if (version == '12.3(2)T2') flag++;
else if (version == '12.3(2)T1') flag++;
else if (version == '12.3(2)T') flag++;
else if (version == '12.3(5a)B5') flag++;
else if (version == '12.3(5a)B4') flag++;
else if (version == '12.3(5a)B3') flag++;
else if (version == '12.3(5a)B2') flag++;
else if (version == '12.3(5a)B1') flag++;
else if (version == '12.3(5a)B') flag++;
else if (version == '12.3(3)B1') flag++;
else if (version == '12.3(3)B') flag++;
else if (version == '12.3(1a)B') flag++;
else if (version == '12.3(26)') flag++;
else if (version == '12.3(25)') flag++;
else if (version == '12.3(24a)') flag++;
else if (version == '12.3(24)') flag++;
else if (version == '12.3(23)') flag++;
else if (version == '12.3(22a)') flag++;
else if (version == '12.3(22)') flag++;
else if (version == '12.3(21b)') flag++;
else if (version == '12.3(21)') flag++;
else if (version == '12.3(20a)') flag++;
else if (version == '12.3(20)') flag++;
else if (version == '12.3(19a)') flag++;
else if (version == '12.3(19)') flag++;
else if (version == '12.3(18a)') flag++;
else if (version == '12.3(18)') flag++;
else if (version == '12.3(17c)') flag++;
else if (version == '12.3(17b)') flag++;
else if (version == '12.3(17a)') flag++;
else if (version == '12.3(17)') flag++;
else if (version == '12.3(16a)') flag++;
else if (version == '12.3(16)') flag++;
else if (version == '12.3(15b)') flag++;
else if (version == '12.3(15a)') flag++;
else if (version == '12.3(15)') flag++;
else if (version == '12.3(13b)') flag++;
else if (version == '12.3(13a)') flag++;
else if (version == '12.3(13)') flag++;
else if (version == '12.3(12e)') flag++;
else if (version == '12.3(12d)') flag++;
else if (version == '12.3(12c)') flag++;
else if (version == '12.3(12b)') flag++;
else if (version == '12.3(12a)') flag++;
else if (version == '12.3(12)') flag++;
else if (version == '12.3(10f)') flag++;
else if (version == '12.3(10e)') flag++;
else if (version == '12.3(10d)') flag++;
else if (version == '12.3(10c)') flag++;
else if (version == '12.3(10b)') flag++;
else if (version == '12.3(10a)') flag++;
else if (version == '12.3(10)') flag++;
else if (version == '12.3(9e)') flag++;
else if (version == '12.3(9d)') flag++;
else if (version == '12.3(9c)') flag++;
else if (version == '12.3(9b)') flag++;
else if (version == '12.3(9a)') flag++;
else if (version == '12.3(9)') flag++;
else if (version == '12.3(6f)') flag++;
else if (version == '12.3(6e)') flag++;
else if (version == '12.3(6c)') flag++;
else if (version == '12.3(6b)') flag++;
else if (version == '12.3(6a)') flag++;
else if (version == '12.3(6)') flag++;
else if (version == '12.3(5f)') flag++;
else if (version == '12.3(5e)') flag++;
else if (version == '12.3(5d)') flag++;
else if (version == '12.3(5c)') flag++;
else if (version == '12.3(5b)') flag++;
else if (version == '12.3(5a)') flag++;
else if (version == '12.3(5)') flag++;
else if (version == '12.3(3i)') flag++;
else if (version == '12.3(3h)') flag++;
else if (version == '12.3(3g)') flag++;
else if (version == '12.3(3f)') flag++;
else if (version == '12.3(3e)') flag++;
else if (version == '12.3(3c)') flag++;
else if (version == '12.3(3b)') flag++;
else if (version == '12.3(3a)') flag++;
else if (version == '12.3(3)') flag++;
else if (version == '12.3(1a)') flag++;
else if (version == '12.3(1)') flag++;
else if (version == '12.2(18)ZYA2') flag++;
else if (version == '12.2(18)ZYA1') flag++;
else if (version == '12.2(18)ZYA') flag++;
else if (version == '12.2(18)ZY2') flag++;
else if (version == '12.2(18)ZY1') flag++;
else if (version == '12.2(18)ZY') flag++;
else if (version == '12.2(18)ZU2') flag++;
else if (version == '12.2(18)ZU1') flag++;
else if (version == '12.2(18)ZU') flag++;
else if (version == '12.2(15)ZL1') flag++;
else if (version == '12.2(15)ZL') flag++;
else if (version == '12.2(15)ZJ5') flag++;
else if (version == '12.2(15)ZJ3') flag++;
else if (version == '12.2(15)ZJ2') flag++;
else if (version == '12.2(15)ZJ1') flag++;
else if (version == '12.2(15)ZJ') flag++;
else if (version == '12.2(13)ZH5') flag++;
else if (version == '12.2(13)ZH4') flag++;
else if (version == '12.2(13)ZH3') flag++;
else if (version == '12.2(13)ZH2') flag++;
else if (version == '12.2(13)ZH1') flag++;
else if (version == '12.2(13)ZH') flag++;
else if (version == '12.2(13)ZG') flag++;
else if (version == '12.2(13)ZF2') flag++;
else if (version == '12.2(13)ZF1') flag++;
else if (version == '12.2(13)ZF') flag++;
else if (version == '12.2(13)ZE') flag++;
else if (version == '12.2(13)ZD4') flag++;
else if (version == '12.2(13)ZD3') flag++;
else if (version == '12.2(13)ZD2') flag++;
else if (version == '12.2(13)ZD1') flag++;
else if (version == '12.2(13)ZD') flag++;
else if (version == '12.2(11)YZ2') flag++;
else if (version == '12.2(11)YZ1') flag++;
else if (version == '12.2(11)YZ') flag++;
else if (version == '12.2(11)YX1') flag++;
else if (version == '12.2(11)YX') flag++;
else if (version == '12.2(11)YV') flag++;
else if (version == '12.2(11)YU') flag++;
else if (version == '12.2(11)YR') flag++;
else if (version == '12.2(11)YQ') flag++;
else if (version == '12.2(8)YN1') flag++;
else if (version == '12.2(8)YN') flag++;
else if (version == '12.2(8)YM') flag++;
else if (version == '12.2(8)YL') flag++;
else if (version == '12.2(8)YJ1') flag++;
else if (version == '12.2(8)YJ') flag++;
else if (version == '12.2(4)YH') flag++;
else if (version == '12.2(4)YF') flag++;
else if (version == '12.2(9)YE') flag++;
else if (version == '12.2(2)YC4') flag++;
else if (version == '12.2(2)YC3') flag++;
else if (version == '12.2(2)YC2') flag++;
else if (version == '12.2(2)YC1') flag++;
else if (version == '12.2(2)YC') flag++;
else if (version == '12.2(4)YB') flag++;
else if (version == '12.2(4)YA7') flag++;
else if (version == '12.2(4)YA6') flag++;
else if (version == '12.2(4)YA2') flag++;
else if (version == '12.2(4)YA1') flag++;
else if (version == '12.2(4)YA') flag++;
else if (version == '12.2(4)XW') flag++;
else if (version == '12.2(4)XV5') flag++;
else if (version == '12.2(4)XV2') flag++;
else if (version == '12.2(4)XV1') flag++;
else if (version == '12.2(4)XV') flag++;
else if (version == '12.2(2)XT3') flag++;
else if (version == '12.2(2)XT2') flag++;
else if (version == '12.2(2)XT') flag++;
else if (version == '12.2(2)XQ1') flag++;
else if (version == '12.2(2)XQ') flag++;
else if (version == '12.2(52)XO') flag++;
else if (version == '12.2(40)XO') flag++;
else if (version == '12.2(2)XN') flag++;
else if (version == '12.2(4)XM4') flag++;
else if (version == '12.2(4)XM3') flag++;
else if (version == '12.2(4)XM2') flag++;
else if (version == '12.2(4)XM') flag++;
else if (version == '12.2(4)XL6') flag++;
else if (version == '12.2(4)XL5') flag++;
else if (version == '12.2(4)XL4') flag++;
else if (version == '12.2(4)XL3') flag++;
else if (version == '12.2(4)XL2') flag++;
else if (version == '12.2(4)XL1') flag++;
else if (version == '12.2(4)XL') flag++;
else if (version == '12.2(2)XK3') flag++;
else if (version == '12.2(2)XK2') flag++;
else if (version == '12.2(2)XK') flag++;
else if (version == '12.2(2)XJ') flag++;
else if (version == '12.2(2)XH2') flag++;
else if (version == '12.2(2)XH') flag++;
else if (version == '12.2(2)XG1') flag++;
else if (version == '12.2(2)XG') flag++;
else if (version == '12.2(1)XD4') flag++;
else if (version == '12.2(1)XD3') flag++;
else if (version == '12.2(1)XD2') flag++;
else if (version == '12.2(1)XD1') flag++;
else if (version == '12.2(1)XD') flag++;
else if (version == '12.2(2)XB8') flag++;
else if (version == '12.2(2)XB7') flag++;
else if (version == '12.2(2)XB6') flag++;
else if (version == '12.2(2)XB5') flag++;
else if (version == '12.2(2)XB3') flag++;
else if (version == '12.2(2)XB2') flag++;
else if (version == '12.2(2)XB15') flag++;
else if (version == '12.2(2)XB14') flag++;
else if (version == '12.2(2)XB11') flag++;
else if (version == '12.2(2)XA5') flag++;
else if (version == '12.2(2)XA4') flag++;
else if (version == '12.2(2)XA1') flag++;
else if (version == '12.2(2)XA') flag++;
else if (version == '12.2(8)TPC10c') flag++;
else if (version == '12.2(8)TPC10b') flag++;
else if (version == '12.2(8)TPC10a') flag++;
else if (version == '12.2(15)T9') flag++;
else if (version == '12.2(15)T8') flag++;
else if (version == '12.2(15)T7') flag++;
else if (version == '12.2(15)T5') flag++;
else if (version == '12.2(15)T2') flag++;
else if (version == '12.2(15)T16') flag++;
else if (version == '12.2(15)T15') flag++;
else if (version == '12.2(15)T14') flag++;
else if (version == '12.2(15)T13') flag++;
else if (version == '12.2(15)T12') flag++;
else if (version == '12.2(15)T11') flag++;
else if (version == '12.2(15)T10') flag++;
else if (version == '12.2(15)T1') flag++;
else if (version == '12.2(15)T') flag++;
else if (version == '12.2(13)T9') flag++;
else if (version == '12.2(13)T8') flag++;
else if (version == '12.2(13)T5') flag++;
else if (version == '12.2(13)T4') flag++;
else if (version == '12.2(13)T3') flag++;
else if (version == '12.2(13)T2') flag++;
else if (version == '12.2(13)T16') flag++;
else if (version == '12.2(13)T14') flag++;
else if (version == '12.2(13)T13') flag++;
else if (version == '12.2(13)T12') flag++;
else if (version == '12.2(13)T11') flag++;
else if (version == '12.2(13)T10') flag++;
else if (version == '12.2(13)T1a') flag++;
else if (version == '12.2(13)T1') flag++;
else if (version == '12.2(13)T') flag++;
else if (version == '12.2(11)T9') flag++;
else if (version == '12.2(11)T8') flag++;
else if (version == '12.2(11)T6') flag++;
else if (version == '12.2(11)T5') flag++;
else if (version == '12.2(11)T4') flag++;
else if (version == '12.2(11)T3') flag++;
else if (version == '12.2(11)T2') flag++;
else if (version == '12.2(11)T11') flag++;
else if (version == '12.2(11)T10') flag++;
else if (version == '12.2(11)T1') flag++;
else if (version == '12.2(11)T') flag++;
else if (version == '12.2(8)T8') flag++;
else if (version == '12.2(8)T7') flag++;
else if (version == '12.2(8)T5') flag++;
else if (version == '12.2(8)T4') flag++;
else if (version == '12.2(8)T10') flag++;
else if (version == '12.2(8)T1') flag++;
else if (version == '12.2(8)T') flag++;
else if (version == '12.2(4)T7') flag++;
else if (version == '12.2(4)T6') flag++;
else if (version == '12.2(4)T5') flag++;
else if (version == '12.2(4)T3') flag++;
else if (version == '12.2(4)T2') flag++;
else if (version == '12.2(4)T1') flag++;
else if (version == '12.2(4)T') flag++;
else if (version == '12.2(2)T4') flag++;
else if (version == '12.2(2)T1') flag++;
else if (version == '12.2(2)T') flag++;
else if (version == '12.2(33)SXI1') flag++;
else if (version == '12.2(33)SXI') flag++;
else if (version == '12.2(33)SXH5') flag++;
else if (version == '12.2(33)SXH4') flag++;
else if (version == '12.2(33)SXH3a') flag++;
else if (version == '12.2(33)SXH3') flag++;
else if (version == '12.2(33)SXH2a') flag++;
else if (version == '12.2(33)SXH2') flag++;
else if (version == '12.2(33)SXH1') flag++;
else if (version == '12.2(33)SXH') flag++;
else if (version == '12.2(18)SXF9') flag++;
else if (version == '12.2(18)SXF8') flag++;
else if (version == '12.2(18)SXF7') flag++;
else if (version == '12.2(18)SXF6') flag++;
else if (version == '12.2(18)SXF5') flag++;
else if (version == '12.2(18)SXF4') flag++;
else if (version == '12.2(18)SXF3') flag++;
else if (version == '12.2(18)SXF2') flag++;
else if (version == '12.2(18)SXF16') flag++;
else if (version == '12.2(18)SXF15a') flag++;
else if (version == '12.2(18)SXF15') flag++;
else if (version == '12.2(18)SXF14') flag++;
else if (version == '12.2(18)SXF13') flag++;
else if (version == '12.2(18)SXF12a') flag++;
else if (version == '12.2(18)SXF12') flag++;
else if (version == '12.2(18)SXF11') flag++;
else if (version == '12.2(18)SXF10a') flag++;
else if (version == '12.2(18)SXF10') flag++;
else if (version == '12.2(18)SXF1') flag++;
else if (version == '12.2(18)SXF') flag++;
else if (version == '12.2(18)SXE6b') flag++;
else if (version == '12.2(18)SXE6a') flag++;
else if (version == '12.2(18)SXE6') flag++;
else if (version == '12.2(18)SXE5') flag++;
else if (version == '12.2(18)SXE4') flag++;
else if (version == '12.2(18)SXE3') flag++;
else if (version == '12.2(18)SXE2') flag++;
else if (version == '12.2(18)SXE1') flag++;
else if (version == '12.2(18)SXE') flag++;
else if (version == '12.2(18)SXD7b') flag++;
else if (version == '12.2(18)SXD7a') flag++;
else if (version == '12.2(18)SXD7') flag++;
else if (version == '12.2(18)SXD6') flag++;
else if (version == '12.2(18)SXD5') flag++;
else if (version == '12.2(18)SXD4') flag++;
else if (version == '12.2(18)SXD3') flag++;
else if (version == '12.2(18)SXD2') flag++;
else if (version == '12.2(18)SXD1') flag++;
else if (version == '12.2(18)SXD') flag++;
else if (version == '12.2(17d)SXB9') flag++;
else if (version == '12.2(17d)SXB8') flag++;
else if (version == '12.2(17d)SXB7') flag++;
else if (version == '12.2(17d)SXB6') flag++;
else if (version == '12.2(17d)SXB5') flag++;
else if (version == '12.2(17d)SXB4') flag++;
else if (version == '12.2(17d)SXB3') flag++;
else if (version == '12.2(17d)SXB2') flag++;
else if (version == '12.2(17d)SXB11a') flag++;
else if (version == '12.2(17d)SXB11') flag++;
else if (version == '12.2(17d)SXB10') flag++;
else if (version == '12.2(17d)SXB1') flag++;
else if (version == '12.2(17d)SXB') flag++;
else if (version == '12.2(17b)SXA2') flag++;
else if (version == '12.2(17b)SXA') flag++;
else if (version == '12.2(17a)SX4') flag++;
else if (version == '12.2(17a)SX3') flag++;
else if (version == '12.2(17a)SX2') flag++;
else if (version == '12.2(17a)SX1') flag++;
else if (version == '12.2(17a)SX') flag++;
else if (version == '12.2(14)SX2') flag++;
else if (version == '12.2(14)SX1') flag++;
else if (version == '12.2(14)SX') flag++;
else if (version == '12.2(14)SU2') flag++;
else if (version == '12.2(14)SU1') flag++;
else if (version == '12.2(14)SU') flag++;
else if (version == '12.2(33)SRD2') flag++;
else if (version == '12.2(33)SRD1') flag++;
else if (version == '12.2(33)SRD') flag++;
else if (version == '12.2(33)SRC4') flag++;
else if (version == '12.2(33)SRC3') flag++;
else if (version == '12.2(33)SRC2') flag++;
else if (version == '12.2(33)SRC1') flag++;
else if (version == '12.2(33)SRC') flag++;
else if (version == '12.2(33)SRB6') flag++;
else if (version == '12.2(33)SRB5a') flag++;
else if (version == '12.2(33)SRB5') flag++;
else if (version == '12.2(33)SRB4') flag++;
else if (version == '12.2(33)SRB3') flag++;
else if (version == '12.2(33)SRB2') flag++;
else if (version == '12.2(33)SRB1') flag++;
else if (version == '12.2(33)SRB') flag++;
else if (version == '12.2(33)SRA7') flag++;
else if (version == '12.2(33)SRA6') flag++;
else if (version == '12.2(33)SRA5') flag++;
else if (version == '12.2(33)SRA4') flag++;
else if (version == '12.2(33)SRA3') flag++;
else if (version == '12.2(33)SRA2') flag++;
else if (version == '12.2(33)SRA1') flag++;
else if (version == '12.2(33)SRA') flag++;
else if (version == '12.2(44)SQ') flag++;
else if (version == '12.2(31)SGA9') flag++;
else if (version == '12.2(31)SGA8') flag++;
else if (version == '12.2(31)SGA7') flag++;
else if (version == '12.2(31)SGA6') flag++;
else if (version == '12.2(31)SGA5') flag++;
else if (version == '12.2(31)SGA4') flag++;
else if (version == '12.2(31)SGA3') flag++;
else if (version == '12.2(31)SGA2') flag++;
else if (version == '12.2(31)SGA10') flag++;
else if (version == '12.2(31)SGA1') flag++;
else if (version == '12.2(31)SGA') flag++;
else if (version == '12.2(53)SG') flag++;
else if (version == '12.2(52)SG') flag++;
else if (version == '12.2(50)SG3') flag++;
else if (version == '12.2(50)SG2') flag++;
else if (version == '12.2(50)SG1') flag++;
else if (version == '12.2(50)SG') flag++;
else if (version == '12.2(46)SG1') flag++;
else if (version == '12.2(46)SG') flag++;
else if (version == '12.2(44)SG1') flag++;
else if (version == '12.2(44)SG') flag++;
else if (version == '12.2(40)SG') flag++;
else if (version == '12.2(37)SG1') flag++;
else if (version == '12.2(37)SG') flag++;
else if (version == '12.2(31)SG3') flag++;
else if (version == '12.2(31)SG2') flag++;
else if (version == '12.2(31)SG1') flag++;
else if (version == '12.2(31)SG') flag++;
else if (version == '12.2(25)SG4') flag++;
else if (version == '12.2(25)SG3') flag++;
else if (version == '12.2(25)SG2') flag++;
else if (version == '12.2(25)SG1') flag++;
else if (version == '12.2(25)SG') flag++;
else if (version == '12.2(25)SEG3') flag++;
else if (version == '12.2(25)SEG1') flag++;
else if (version == '12.2(25)SEG') flag++;
else if (version == '12.2(25)SEF1') flag++;
else if (version == '12.2(25)SEE4') flag++;
else if (version == '12.2(25)SEE3') flag++;
else if (version == '12.2(25)SEE2') flag++;
else if (version == '12.2(25)SEE1') flag++;
else if (version == '12.2(25)SEE') flag++;
else if (version == '12.2(25)SED1') flag++;
else if (version == '12.2(25)SED') flag++;
else if (version == '12.2(25)SEC2') flag++;
else if (version == '12.2(25)SEC1') flag++;
else if (version == '12.2(25)SEC') flag++;
else if (version == '12.2(50)SE1') flag++;
else if (version == '12.2(50)SE') flag++;
else if (version == '12.2(46)SE2') flag++;
else if (version == '12.2(46)SE1') flag++;
else if (version == '12.2(46)SE') flag++;
else if (version == '12.2(44)SE6') flag++;
else if (version == '12.2(44)SE5') flag++;
else if (version == '12.2(44)SE4') flag++;
else if (version == '12.2(44)SE3') flag++;
else if (version == '12.2(44)SE2') flag++;
else if (version == '12.2(44)SE1') flag++;
else if (version == '12.2(44)SE') flag++;
else if (version == '12.2(40)SE2') flag++;
else if (version == '12.2(40)SE1') flag++;
else if (version == '12.2(40)SE') flag++;
else if (version == '12.2(37)SE1') flag++;
else if (version == '12.2(37)SE') flag++;
else if (version == '12.2(35)SE5') flag++;
else if (version == '12.2(35)SE4') flag++;
else if (version == '12.2(35)SE3') flag++;
else if (version == '12.2(35)SE2') flag++;
else if (version == '12.2(35)SE1') flag++;
else if (version == '12.2(35)SE') flag++;
else if (version == '12.2(27)SBC2') flag++;
else if (version == '12.2(27)SBC1') flag++;
else if (version == '12.2(27)SBC') flag++;
else if (version == '12.2(25)S9') flag++;
else if (version == '12.2(25)S8') flag++;
else if (version == '12.2(25)S7') flag++;
else if (version == '12.2(25)S6') flag++;
else if (version == '12.2(25)S5') flag++;
else if (version == '12.2(25)S4') flag++;
else if (version == '12.2(25)S3') flag++;
else if (version == '12.2(25)S2') flag++;
else if (version == '12.2(25)S15') flag++;
else if (version == '12.2(25)S14') flag++;
else if (version == '12.2(25)S13') flag++;
else if (version == '12.2(25)S12') flag++;
else if (version == '12.2(25)S11') flag++;
else if (version == '12.2(25)S10') flag++;
else if (version == '12.2(25)S1') flag++;
else if (version == '12.2(25)S') flag++;
else if (version == '12.2(22)S1') flag++;
else if (version == '12.2(22)S') flag++;
else if (version == '12.2(20)S9') flag++;
else if (version == '12.2(20)S8') flag++;
else if (version == '12.2(20)S7') flag++;
else if (version == '12.2(20)S6') flag++;
else if (version == '12.2(20)S5') flag++;
else if (version == '12.2(20)S4') flag++;
else if (version == '12.2(20)S3') flag++;
else if (version == '12.2(20)S2') flag++;
else if (version == '12.2(20)S14') flag++;
else if (version == '12.2(20)S10') flag++;
else if (version == '12.2(20)S1') flag++;
else if (version == '12.2(20)S') flag++;
else if (version == '12.2(18)S9') flag++;
else if (version == '12.2(18)S8') flag++;
else if (version == '12.2(18)S7') flag++;
else if (version == '12.2(18)S6') flag++;
else if (version == '12.2(18)S5') flag++;
else if (version == '12.2(18)S4') flag++;
else if (version == '12.2(18)S3') flag++;
else if (version == '12.2(18)S2') flag++;
else if (version == '12.2(18)S13') flag++;
else if (version == '12.2(18)S12') flag++;
else if (version == '12.2(18)S11') flag++;
else if (version == '12.2(18)S10') flag++;
else if (version == '12.2(18)S1') flag++;
else if (version == '12.2(18)S') flag++;
else if (version == '12.2(14)S9') flag++;
else if (version == '12.2(14)S8') flag++;
else if (version == '12.2(14)S7') flag++;
else if (version == '12.2(14)S5') flag++;
else if (version == '12.2(14)S3') flag++;
else if (version == '12.2(14)S2') flag++;
else if (version == '12.2(14)S19') flag++;
else if (version == '12.2(14)S18') flag++;
else if (version == '12.2(14)S17') flag++;
else if (version == '12.2(14)S16') flag++;
else if (version == '12.2(14)S15') flag++;
else if (version == '12.2(14)S14') flag++;
else if (version == '12.2(14)S13') flag++;
else if (version == '12.2(14)S12') flag++;
else if (version == '12.2(14)S11') flag++;
else if (version == '12.2(14)S10') flag++;
else if (version == '12.2(14)S1') flag++;
else if (version == '12.2(14)S') flag++;
else if (version == '12.2(9)S') flag++;
else if (version == '12.2(12h)M1') flag++;
else if (version == '12.2(12b)M1') flag++;
else if (version == '12.2(6c)M1') flag++;
else if (version == '12.2(1)M0') flag++;
else if (version == '12.2(18)IXH') flag++;
else if (version == '12.2(18)IXG') flag++;
else if (version == '12.2(18)IXF1') flag++;
else if (version == '12.2(18)IXF') flag++;
else if (version == '12.2(18)IXE') flag++;
else if (version == '12.2(18)IXD1') flag++;
else if (version == '12.2(18)IXD') flag++;
else if (version == '12.2(18)IXC') flag++;
else if (version == '12.2(18)IXB2') flag++;
else if (version == '12.2(18)IXB1') flag++;
else if (version == '12.2(18)IXB') flag++;
else if (version == '12.2(18)IXA') flag++;
else if (version == '12.2(33)IRC') flag++;
else if (version == '12.2(33)IRB') flag++;
else if (version == '12.2(33)IRA') flag++;
else if (version == '12.2(25)FZ') flag++;
else if (version == '12.2(46)EY') flag++;
else if (version == '12.2(37)EY') flag++;
else if (version == '12.2(46)EX') flag++;
else if (version == '12.2(44)EX1') flag++;
else if (version == '12.2(44)EX') flag++;
else if (version == '12.2(40)EX3') flag++;
else if (version == '12.2(40)EX2') flag++;
else if (version == '12.2(40)EX1') flag++;
else if (version == '12.2(40)EX') flag++;
else if (version == '12.2(2)DD4') flag++;
else if (version == '12.2(2)DD3') flag++;
else if (version == '12.2(2)DD1') flag++;
else if (version == '12.2(2)DD') flag++;
else if (version == '12.2(15)CZ3') flag++;
else if (version == '12.2(15)CZ2') flag++;
else if (version == '12.2(15)CZ1') flag++;
else if (version == '12.2(15)CZ') flag++;
else if (version == '12.2(4)BW2') flag++;
else if (version == '12.2(4)BW1a') flag++;
else if (version == '12.2(4)BW1') flag++;
else if (version == '12.2(4)BW') flag++;
else if (version == '12.2(16)B2') flag++;
else if (version == '12.2(16)B1') flag++;
else if (version == '12.2(16)B') flag++;
else if (version == '12.2(15)B') flag++;
else if (version == '12.2(4)B8') flag++;
else if (version == '12.2(4)B7') flag++;
else if (version == '12.2(4)B6') flag++;
else if (version == '12.2(4)B5') flag++;
else if (version == '12.2(4)B4') flag++;
else if (version == '12.2(4)B3') flag++;
else if (version == '12.2(4)B2') flag++;
else if (version == '12.2(4)B1') flag++;
else if (version == '12.2(4)B') flag++;
else if (version == '12.2(46a)') flag++;
else if (version == '12.2(46)') flag++;
else if (version == '12.2(40a)') flag++;
else if (version == '12.2(40)') flag++;
else if (version == '12.2(37)') flag++;
else if (version == '12.2(34a)') flag++;
else if (version == '12.2(34)') flag++;
else if (version == '12.2(32)') flag++;
else if (version == '12.2(31)') flag++;
else if (version == '12.2(29b)') flag++;
else if (version == '12.2(29a)') flag++;
else if (version == '12.2(29)') flag++;
else if (version == '12.2(28d)') flag++;
else if (version == '12.2(28c)') flag++;
else if (version == '12.2(28b)') flag++;
else if (version == '12.2(28a)') flag++;
else if (version == '12.2(28)') flag++;
else if (version == '12.2(27c)') flag++;
else if (version == '12.2(27b)') flag++;
else if (version == '12.2(27a)') flag++;
else if (version == '12.2(27)') flag++;
else if (version == '12.2(26c)') flag++;
else if (version == '12.2(26b)') flag++;
else if (version == '12.2(26a)') flag++;
else if (version == '12.2(26)') flag++;
else if (version == '12.2(24b)') flag++;
else if (version == '12.2(24a)') flag++;
else if (version == '12.2(24)') flag++;
else if (version == '12.2(23f)') flag++;
else if (version == '12.2(23e)') flag++;
else if (version == '12.2(23d)') flag++;
else if (version == '12.2(23c)') flag++;
else if (version == '12.2(23a)') flag++;
else if (version == '12.2(23)') flag++;
else if (version == '12.2(21b)') flag++;
else if (version == '12.2(21a)') flag++;
else if (version == '12.2(21)') flag++;
else if (version == '12.2(19c)') flag++;
else if (version == '12.2(19b)') flag++;
else if (version == '12.2(19a)') flag++;
else if (version == '12.2(19)') flag++;
else if (version == '12.2(17f)') flag++;
else if (version == '12.2(17e)') flag++;
else if (version == '12.2(17d)') flag++;
else if (version == '12.2(17b)') flag++;
else if (version == '12.2(17a)') flag++;
else if (version == '12.2(17)') flag++;
else if (version == '12.2(16f)') flag++;
else if (version == '12.2(16c)') flag++;
else if (version == '12.2(16b)') flag++;
else if (version == '12.2(16a)') flag++;
else if (version == '12.2(16)') flag++;
else if (version == '12.2(13e)') flag++;
else if (version == '12.2(13c)') flag++;
else if (version == '12.2(13b)') flag++;
else if (version == '12.2(13a)') flag++;
else if (version == '12.2(13)') flag++;
else if (version == '12.2(12m)') flag++;
else if (version == '12.2(12l)') flag++;
else if (version == '12.2(12k)') flag++;
else if (version == '12.2(12j)') flag++;
else if (version == '12.2(12i)') flag++;
else if (version == '12.2(12h)') flag++;
else if (version == '12.2(12g)') flag++;
else if (version == '12.2(12f)') flag++;
else if (version == '12.2(12e)') flag++;
else if (version == '12.2(12c)') flag++;
else if (version == '12.2(12b)') flag++;
else if (version == '12.2(12a)') flag++;
else if (version == '12.2(12)') flag++;
else if (version == '12.2(10g)') flag++;
else if (version == '12.2(10d)') flag++;
else if (version == '12.2(10b)') flag++;
else if (version == '12.2(10a)') flag++;
else if (version == '12.2(10)') flag++;
else if (version == '12.2(7g)') flag++;
else if (version == '12.2(7c)') flag++;
else if (version == '12.2(7b)') flag++;
else if (version == '12.2(7a)') flag++;
else if (version == '12.2(7)') flag++;
else if (version == '12.2(6j)') flag++;
else if (version == '12.2(6i)') flag++;
else if (version == '12.2(6h)') flag++;
else if (version == '12.2(6g)') flag++;
else if (version == '12.2(6f)') flag++;
else if (version == '12.2(6e)') flag++;
else if (version == '12.2(6d)') flag++;
else if (version == '12.2(6c)') flag++;
else if (version == '12.2(6b)') flag++;
else if (version == '12.2(6a)') flag++;
else if (version == '12.2(6)') flag++;
else if (version == '12.2(5d)') flag++;
else if (version == '12.2(5c)') flag++;
else if (version == '12.2(5b)') flag++;
else if (version == '12.2(5a)') flag++;
else if (version == '12.2(5)') flag++;
else if (version == '12.2(3g)') flag++;
else if (version == '12.2(3d)') flag++;
else if (version == '12.2(3c)') flag++;
else if (version == '12.2(3b)') flag++;
else if (version == '12.2(3a)') flag++;
else if (version == '12.2(3)') flag++;
else if (version == '12.2(1d)') flag++;
else if (version == '12.2(1c)') flag++;
else if (version == '12.2(1b)') flag++;
else if (version == '12.2(1a)') flag++;
else if (version == '12.2(1)') flag++;
else if (version == '12.1(5)YI2') flag++;
else if (version == '12.1(5)YI1') flag++;
else if (version == '12.1(5)YI') flag++;
else if (version == '12.1(5)YF4') flag++;
else if (version == '12.1(5)YF3') flag++;
else if (version == '12.1(5)YF2') flag++;
else if (version == '12.1(5)YF1') flag++;
else if (version == '12.1(5)YF') flag++;
else if (version == '12.1(5)YE5') flag++;
else if (version == '12.1(5)YE4') flag++;
else if (version == '12.1(5)YE3') flag++;
else if (version == '12.1(5)YE2') flag++;
else if (version == '12.1(5)YE1') flag++;
else if (version == '12.1(5)YD6') flag++;
else if (version == '12.1(5)YD5') flag++;
else if (version == '12.1(5)YD4') flag++;
else if (version == '12.1(5)YD3') flag++;
else if (version == '12.1(5)YD2') flag++;
else if (version == '12.1(5)YD1') flag++;
else if (version == '12.1(5)YD') flag++;
else if (version == '12.1(5)YB5') flag++;
else if (version == '12.1(5)YB4') flag++;
else if (version == '12.1(5)YB1') flag++;
else if (version == '12.1(3)XT2') flag++;
else if (version == '12.1(3)XT1') flag++;
else if (version == '12.1(3)XT') flag++;
else if (version == '12.1(5)XR2') flag++;
else if (version == '12.1(5)XR1') flag++;
else if (version == '12.1(5)XR') flag++;
else if (version == '12.1(3)XP4') flag++;
else if (version == '12.1(3)XP2') flag++;
else if (version == '12.1(3)XP') flag++;
else if (version == '12.1(5)XM8') flag++;
else if (version == '12.1(5)XM7') flag++;
else if (version == '12.1(5)XM5') flag++;
else if (version == '12.1(5)XM4') flag++;
else if (version == '12.1(5)XM3') flag++;
else if (version == '12.1(5)XM2') flag++;
else if (version == '12.1(5)XM1') flag++;
else if (version == '12.1(5)XM') flag++;
else if (version == '12.1(3a)XL1') flag++;
else if (version == '12.1(3)XL') flag++;
else if (version == '12.1(3)XJ') flag++;
else if (version == '12.1(3a)XI9') flag++;
else if (version == '12.1(3a)XI8') flag++;
else if (version == '12.1(3a)XI6') flag++;
else if (version == '12.1(3a)XI5') flag++;
else if (version == '12.1(3a)XI4') flag++;
else if (version == '12.1(3a)XI3') flag++;
else if (version == '12.1(3a)XI2') flag++;
else if (version == '12.1(3a)XI1') flag++;
else if (version == '12.1(3)XI') flag++;
else if (version == '12.1(2a)XH3') flag++;
else if (version == '12.1(2a)XH2') flag++;
else if (version == '12.1(2a)XH') flag++;
else if (version == '12.1(1)XC1') flag++;
else if (version == '12.1(5)T9') flag++;
else if (version == '12.1(5)T8b') flag++;
else if (version == '12.1(5)T8a') flag++;
else if (version == '12.1(5)T8') flag++;
else if (version == '12.1(5)T7') flag++;
else if (version == '12.1(5)T6') flag++;
else if (version == '12.1(5)T5') flag++;
else if (version == '12.1(5)T4') flag++;
else if (version == '12.1(5)T20') flag++;
else if (version == '12.1(5)T2') flag++;
else if (version == '12.1(5)T19') flag++;
else if (version == '12.1(5)T18') flag++;
else if (version == '12.1(5)T17') flag++;
else if (version == '12.1(5)T15') flag++;
else if (version == '12.1(5)T14') flag++;
else if (version == '12.1(5)T12') flag++;
else if (version == '12.1(5)T10') flag++;
else if (version == '12.1(5)T1') flag++;
else if (version == '12.1(5)T') flag++;
else if (version == '12.1(3a)T4') flag++;
else if (version == '12.1(3a)T2') flag++;
else if (version == '12.1(3a)T1') flag++;
else if (version == '12.1(3)T') flag++;
else if (version == '12.1(2)T') flag++;
else if (version == '12.1(1a)T1') flag++;
else if (version == '12.1(1)T') flag++;
else if (version == '12.1(13)EX3') flag++;
else if (version == '12.1(13)EX2') flag++;
else if (version == '12.1(13)EX1') flag++;
else if (version == '12.1(13)EX') flag++;
else if (version == '12.1(12c)EX1') flag++;
else if (version == '12.1(12c)EX') flag++;
else if (version == '12.1(11b)EX1') flag++;
else if (version == '12.1(11b)EX') flag++;
else if (version == '12.1(10)EX2') flag++;
else if (version == '12.1(10)EX') flag++;
else if (version == '12.1(9)EX3') flag++;
else if (version == '12.1(8b)EX5') flag++;
else if (version == '12.1(8b)EX3') flag++;
else if (version == '12.1(8b)EX2') flag++;
else if (version == '12.1(8a)EX') flag++;
else if (version == '12.1(27b)E4') flag++;
else if (version == '12.1(27b)E3') flag++;
else if (version == '12.1(27b)E2') flag++;
else if (version == '12.1(27b)E1') flag++;
else if (version == '12.1(27b)E') flag++;
else if (version == '12.1(26)E9') flag++;
else if (version == '12.1(26)E8') flag++;
else if (version == '12.1(26)E7') flag++;
else if (version == '12.1(26)E6') flag++;
else if (version == '12.1(26)E5') flag++;
else if (version == '12.1(26)E4') flag++;
else if (version == '12.1(26)E3') flag++;
else if (version == '12.1(26)E2') flag++;
else if (version == '12.1(26)E1') flag++;
else if (version == '12.1(26)E') flag++;
else if (version == '12.1(23)E4') flag++;
else if (version == '12.1(23)E3') flag++;
else if (version == '12.1(23)E2') flag++;
else if (version == '12.1(23)E1') flag++;
else if (version == '12.1(23)E') flag++;
else if (version == '12.1(22)E6') flag++;
else if (version == '12.1(22)E5') flag++;
else if (version == '12.1(22)E4') flag++;
else if (version == '12.1(22)E3') flag++;
else if (version == '12.1(22)E2') flag++;
else if (version == '12.1(22)E1') flag++;
else if (version == '12.1(22)E') flag++;
else if (version == '12.1(20)E6') flag++;
else if (version == '12.1(20)E5') flag++;
else if (version == '12.1(20)E4') flag++;
else if (version == '12.1(20)E3') flag++;
else if (version == '12.1(20)E2') flag++;
else if (version == '12.1(20)E1') flag++;
else if (version == '12.1(20)E') flag++;
else if (version == '12.1(19)E7') flag++;
else if (version == '12.1(19)E6') flag++;
else if (version == '12.1(19)E4') flag++;
else if (version == '12.1(19)E3') flag++;
else if (version == '12.1(19)E2') flag++;
else if (version == '12.1(19)E1') flag++;
else if (version == '12.1(19)E') flag++;
else if (version == '12.1(14)E7') flag++;
else if (version == '12.1(14)E6') flag++;
else if (version == '12.1(14)E5') flag++;
else if (version == '12.1(14)E4') flag++;
else if (version == '12.1(14)E3') flag++;
else if (version == '12.1(14)E2') flag++;
else if (version == '12.1(14)E10') flag++;
else if (version == '12.1(14)E1') flag++;
else if (version == '12.1(14)E') flag++;
else if (version == '12.1(13)E9') flag++;
else if (version == '12.1(13)E8') flag++;
else if (version == '12.1(13)E7') flag++;
else if (version == '12.1(13)E6') flag++;
else if (version == '12.1(13)E5') flag++;
else if (version == '12.1(13)E4') flag++;
else if (version == '12.1(13)E3') flag++;
else if (version == '12.1(13)E2') flag++;
else if (version == '12.1(13)E17') flag++;
else if (version == '12.1(13)E16') flag++;
else if (version == '12.1(13)E15') flag++;
else if (version == '12.1(13)E14') flag++;
else if (version == '12.1(13)E13') flag++;
else if (version == '12.1(13)E12') flag++;
else if (version == '12.1(13)E11') flag++;
else if (version == '12.1(13)E10') flag++;
else if (version == '12.1(13)E1') flag++;
else if (version == '12.1(13)E') flag++;
else if (version == '12.1(12c)E6') flag++;
else if (version == '12.1(12c)E5') flag++;
else if (version == '12.1(12c)E4') flag++;
else if (version == '12.1(12c)E2') flag++;
else if (version == '12.1(12c)E1') flag++;
else if (version == '12.1(12c)E') flag++;
else if (version == '12.1(11b)E7') flag++;
else if (version == '12.1(11b)E4') flag++;
else if (version == '12.1(11b)E3') flag++;
else if (version == '12.1(11b)E2') flag++;
else if (version == '12.1(11b)E14') flag++;
else if (version == '12.1(11b)E12') flag++;
else if (version == '12.1(11b)E11') flag++;
else if (version == '12.1(11b)E10') flag++;
else if (version == '12.1(11b)E1') flag++;
else if (version == '12.1(11b)E0a') flag++;
else if (version == '12.1(11b)E') flag++;
else if (version == '12.1(10)E8') flag++;
else if (version == '12.1(10)E7') flag++;
else if (version == '12.1(10)E6a') flag++;
else if (version == '12.1(10)E6') flag++;
else if (version == '12.1(10)E5') flag++;
else if (version == '12.1(10)E4') flag++;
else if (version == '12.1(10)E3') flag++;
else if (version == '12.1(10)E2') flag++;
else if (version == '12.1(10)E1') flag++;
else if (version == '12.1(10)E') flag++;
else if (version == '12.1(9)E3') flag++;
else if (version == '12.1(9)E2') flag++;
else if (version == '12.1(9)E1') flag++;
else if (version == '12.1(9)E') flag++;
else if (version == '12.1(8b)E9') flag++;
else if (version == '12.1(8b)E8') flag++;
else if (version == '12.1(8b)E7') flag++;
else if (version == '12.1(8b)E6') flag++;
else if (version == '12.1(8b)E20') flag++;
else if (version == '12.1(8b)E19') flag++;
else if (version == '12.1(8b)E18') flag++;
else if (version == '12.1(8b)E15') flag++;
else if (version == '12.1(8b)E14') flag++;
else if (version == '12.1(8b)E13') flag++;
else if (version == '12.1(8b)E12') flag++;
else if (version == '12.1(8b)E11') flag++;
else if (version == '12.1(8b)E10') flag++;
else if (version == '12.1(8a)E5') flag++;
else if (version == '12.1(8a)E4') flag++;
else if (version == '12.1(8a)E3') flag++;
else if (version == '12.1(8a)E2') flag++;
else if (version == '12.1(8a)E1') flag++;
else if (version == '12.1(8a)E') flag++;
else if (version == '12.1(7a)E6') flag++;
else if (version == '12.1(7a)E1a') flag++;
else if (version == '12.1(7a)E1') flag++;
else if (version == '12.1(7)E0a') flag++;
else if (version == '12.1(7)E') flag++;
else if (version == '12.1(6)E8') flag++;
else if (version == '12.1(6)E6') flag++;
else if (version == '12.1(6)E5') flag++;
else if (version == '12.1(6)E3') flag++;
else if (version == '12.1(6)E2') flag++;
else if (version == '12.1(6)E13') flag++;
else if (version == '12.1(6)E1') flag++;
else if (version == '12.1(6)E') flag++;
else if (version == '12.1(5c)E9') flag++;
else if (version == '12.1(5c)E8') flag++;
else if (version == '12.1(5c)E12') flag++;
else if (version == '12.1(5a)E4') flag++;
else if (version == '12.1(5a)E3') flag++;
else if (version == '12.1(5a)E2') flag++;
else if (version == '12.1(5a)E1') flag++;
else if (version == '12.1(5a)E') flag++;
else if (version == '12.1(4)E3') flag++;
else if (version == '12.1(4)E') flag++;
else if (version == '12.1(3a)E8') flag++;
else if (version == '12.1(3a)E7') flag++;
else if (version == '12.1(3a)E5') flag++;
else if (version == '12.1(3a)E4') flag++;
else if (version == '12.1(3a)E1') flag++;
else if (version == '12.1(3a)E') flag++;
else if (version == '12.1(2)E2') flag++;
else if (version == '12.1(2)E1') flag++;
else if (version == '12.1(2)E') flag++;
else if (version == '12.1(1)E5') flag++;
else if (version == '12.1(1)E3') flag++;
else if (version == '12.1(1)E2') flag++;
else if (version == '12.1(1)E1') flag++;
else if (version == '12.1(1)E') flag++;
else if (version == '12.1(27b)') flag++;
else if (version == '12.1(27a)') flag++;
else if (version == '12.1(27)') flag++;
else if (version == '12.1(26)') flag++;
else if (version == '12.1(25)') flag++;
else if (version == '12.1(24)') flag++;
else if (version == '12.1(22c)') flag++;
else if (version == '12.1(22b)') flag++;
else if (version == '12.1(22a)') flag++;
else if (version == '12.1(22)') flag++;
else if (version == '12.1(21)') flag++;
else if (version == '12.1(20a)') flag++;
else if (version == '12.1(20)') flag++;
else if (version == '12.1(19)') flag++;
else if (version == '12.1(18)') flag++;
else if (version == '12.1(17a)') flag++;
else if (version == '12.1(17)') flag++;
else if (version == '12.1(16)') flag++;
else if (version == '12.1(15)') flag++;
else if (version == '12.1(14)') flag++;
else if (version == '12.1(13a)') flag++;
else if (version == '12.1(13)') flag++;
else if (version == '12.1(12c)') flag++;
else if (version == '12.1(12b)') flag++;
else if (version == '12.1(12a)') flag++;
else if (version == '12.1(12)') flag++;
else if (version == '12.1(11b)') flag++;
else if (version == '12.1(11a)') flag++;
else if (version == '12.1(11)') flag++;
else if (version == '12.1(10a)') flag++;
else if (version == '12.1(10)') flag++;
else if (version == '12.1(9a)') flag++;
else if (version == '12.1(9)') flag++;
else if (version == '12.1(8a)') flag++;
else if (version == '12.1(8)') flag++;
else if (version == '12.1(7c)') flag++;
else if (version == '12.1(7b)') flag++;
else if (version == '12.1(7a)') flag++;
else if (version == '12.1(7)') flag++;
else if (version == '12.1(6b)') flag++;
else if (version == '12.1(6a)') flag++;
else if (version == '12.1(6)') flag++;
else if (version == '12.1(5e)') flag++;
else if (version == '12.1(5c)') flag++;
else if (version == '12.1(5b)') flag++;
else if (version == '12.1(5a)') flag++;
else if (version == '12.1(5)') flag++;
else if (version == '12.1(4c)') flag++;
else if (version == '12.1(4b)') flag++;
else if (version == '12.1(4a)') flag++;
else if (version == '12.1(3b)') flag++;
else if (version == '12.1(3)') flag++;
else if (version == '12.1(2b)') flag++;
else if (version == '12.1(2)') flag++;
else if (version == '12.1(1c)') flag++;
else if (version == '12.1(1b)') flag++;
else if (version == '12.1(1a)') flag++;
else if (version == '12.1(1)') flag++;
else if (version == '12.0(7)XR4') flag++;
else if (version == '12.0(7)XR3') flag++;
else if (version == '12.0(7)XR2') flag++;
else if (version == '12.0(7)XR1') flag++;
else if (version == '12.0(7)XK3') flag++;
else if (version == '12.0(7)XK2') flag++;
else if (version == '12.0(7)XK1') flag++;
else if (version == '12.0(7)XK') flag++;
else if (version == '12.0(5)XK2') flag++;
else if (version == '12.0(5)XK1') flag++;
else if (version == '12.0(5)XK') flag++;
else if (version == '12.0(7)XE2') flag++;
else if (version == '12.0(7)XE1') flag++;
else if (version == '12.0(5)XE8') flag++;
else if (version == '12.0(5)XE7') flag++;
else if (version == '12.0(5)XE6') flag++;
else if (version == '12.0(5)XE5') flag++;
else if (version == '12.0(5)XE4') flag++;
else if (version == '12.0(5)XE3') flag++;
else if (version == '12.0(5)XE1') flag++;
else if (version == '12.0(7)T3') flag++;
else if (version == '12.0(7)T2') flag++;
else if (version == '12.0(7)T') flag++;
else if (version == '12.0(5)T1') flag++;
else if (version == '12.0(5)T') flag++;

if (get_kb_item("Host/local_checks_enabled"))
{
  if (flag)
  {
    flag = 0;
    buf = cisco_command_kb_item("Host/Cisco/Config/show_running-config", "show running-config");
    if (check_cisco_result(buf))
    {
      if (preg(pattern:"ip auth-proxy ", multiline:TRUE, string:buf)) { flag = 1; }
      if (preg(pattern:"ip admission ", multiline:TRUE, string:buf)) { flag = 1; }
      if (preg(pattern:"ip [^\r\n]+ consent", multiline:TRUE, string:buf)) { flag = 1; }
    } else if (cisco_needs_enable(buf)) { flag = 1; override = 1; }
  }
}

if (flag)
{
  security_hole(port:0, extra:cisco_caveat(override));
  exit(0);
}
else audit(AUDIT_HOST_NOT, "affected");