CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H/E:X/RL:X/RC:X
-
A vulnerability in the Autonomic Networking Infrastructure (ANI) feature of Cisco IOS Software and Cisco IOS XE Software could allow an unauthenticated, remote attacker to cause a denial of service (DoS) condition.
The vulnerability is due to incomplete input validation on certain crafted packets. An attacker could exploit this vulnerability by sending a crafted IPv6 packet to a device that is running a Cisco IOS Software or Cisco IOS XE Software release that supports the ANI feature.
A device must meet two conditions to be affected by this vulnerability:
- The device must be running a version of Cisco IOS Software or Cisco IOS XE Software that supports ANI (regardless of whether ANI is configured)
- The device must have a reachable IPv6 interface
An exploit could allow the attacker to cause the affected device to reload.
Cisco has released software updates that address this vulnerability. There is a workaround that addresses this vulnerability.
This advisory is available at the following link:
https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20170320-aniipv6
Note: Also see the companion advisory for affected devices that are configured as an autonomic registrar: Cisco IOS and IOS XE Software Autonomic Networking Infrastructure Registrar Denial of Service Vulnerability.
-
Vulnerable Products
This vulnerability affects Cisco IOS Software and Cisco IOS XE Software devices that support the ANI feature. A device must meet two conditions to be affected by this vulnerability:
- The device must be running a version of Cisco IOS Software or Cisco IOS XE Software that supports ANI (regardless of whether ANI is configured)
- The device must have a reachable IPv6 interface
For information about which Cisco IOS and IOS XE Software releases are vulnerable, see the Fixed Software section of this advisory.
Determining Whether an Interface Has an Assigned IPv6 Address
Administrators can identify interfaces that have assigned IPv6 addresses by using the show ipv6 interface brief command in the CLI. The following example shows the output of the command on a device with IPv6 enabled:
router# show ipv6 interface brief . . . GigabitEthernet0/0/0 [Up/Up] fe80::212:daff:fe62:c150 2001:DB8::1
If IPv6 is not supported by the software release that is running on a device, use of the show ipv6 interface brief command produces an error message. If IPv6 is not enabled on the device, use of the show ipv6 interface brief command does not show any interfaces with IPv6 addresses. In either scenario, the device is not affected by this vulnerability.
Determining Whether the Cisco IOS or IOS XE Software Release Supports ANI
To help customers determine their exposure to vulnerabilities in Cisco IOS and IOS XE Software, Cisco provides a tool, the Cisco IOS Software Checker, that identifies any Cisco Security Advisories that impact a specific software release and the earliest release that fixes the vulnerabilities described in each advisory (“First Fixed”).
A summary view of Cisco IOS and Cisco IOS XE Software trains that support ANI is in the following tables. However, customers are encouraged to use the Cisco IOS Software Checker to check their releases, as described in the Fixed Software section of this advisory.
Cisco IOS Software Trains That Support ANI
Cisco IOS Software Train Comments 15.2E
15.2(1)E and 15.2(2)E trains are not affected 15.2EA 15.2(2)EA train is not affected 15.3S 15.3(1)S and 15.3(2)S trains are not affected 15.4S 15.5S 15.5SN 15.6M 15.6S 15.6SN 15.6SP 15.6T
Cisco IOS XE Software Trains That Support ANI
Cisco IOS XE Software Train 3.7E
3.8E 3.9E 3.10S and later trains 16 trains
Determining Whether the Hardware Platform Supports ANI
If a device is running an affected software release, administrators are advised to use the show autonomic device command in the CLI to confirm whether the hardware platform supports ANI. The following examples show the output of this command on devices that support ANI:
Example of Command Output That Indicates ANI Is Supported
Router> show autonomic device UDI PID:CSR1000V SN:XXXXXXXXXXX Domain Cert is Not Valid Router>
Additional Example of Command Output That Indicates ANI Is Supported
Router> show autonomic device Router>
If ANI is not supported by the software release that is running on a device, use of the show autonomic device command produces an error message as shown in the following example:
Example of Command Output That Indicates ANI Is Not Supported
Router> show autonomic device ^ % Invalid input detected at '^' marker. Router>
Determining the Cisco IOS Software Release
To determine which Cisco IOS Software release is running on a device, administrators can log in to the device, use the show version command in the CLI, and then refer to the system banner that appears. If the device is running Cisco IOS Software, the system banner displays text similar to Cisco Internetwork Operating System Software or Cisco IOS Software. The banner also displays the installed image name in parentheses, followed by the Cisco IOS Software release number and release name. Some Cisco devices do not support the show version command or may provide different output.
The following example identifies a Cisco product that is running Cisco IOS Software Release 15.5(2)T1 with an installed image name of C2951-UNIVERSALK9-M:
Router> show version Cisco IOS Software, C2951 Software (C2951-UNIVERSALK9-M), Version 15.5(2)T1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2015 by Cisco Systems, Inc. Compiled Mon 22-Jun-15 09:32 by prod_rel_team . . .
For information about the naming and numbering conventions for Cisco IOS Software releases, see White Paper: Cisco IOS and NX-OS Software Reference Guide.
Determining the Cisco IOS XE Software Release
To determine which Cisco IOS XE Software release is running on a device, administrators can log in to the device, use the show version command in the CLI, and then refer to the system banner that appears. If the device is running Cisco IOS XE Software, the system banner displays Cisco IOS XE Software or similar text.
The following example shows the output of the show version command on a device that is running Cisco IOS XE Software Release 3.16.1aS:
Router> show version Cisco IOS XE Software, Version 03.16.01a.S - Extended Support Release Cisco IOS Software, ASR1000 Software (PPC_LINUX_IOSD-ADVENTERPRISEK9-M), Version 15.5(3)S1a, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2015 by Cisco Systems, Inc. Compiled Wed 04-Nov-15 17:40 by mcpre . . .
For information about the naming and numbering conventions for Cisco IOS XE Software releases, see White Paper: Cisco IOS and NX-OS Software Reference Guide.
Products Confirmed Not Vulnerable
No other Cisco products are currently known to be affected by this vulnerability.
Cisco has confirmed that this vulnerability does not affect Cisco IOS XR Software or Cisco NX-OS Software.
-
Exploitation of this vulnerability will cause an affected device to reload. Exploitation may be confirmed by decoding the stack trace for the device and determining whether the AN process crashed. If the process crashed, device logs will contain an error message similar to the following example :
%Software-forced reload Exception to IOS Thread: Frame pointer 0x7F7A1225B3F8, PC = 0x7F7AE51201F7 UNIX-EXT-SIGNAL: Aborted(6), Process = AN . . . %SYS-3-OVERRUN: Block overrun at ...
-
There is a workaround that addresses this vulnerability. The workaround consists of using an access control list (ACL) to filter IPv6 packets that are sent to the device on UDP port 8888 or UDP port 4936 when the device is not configured for ANI. If the device is configured to use ANI, this workaround does not apply, and customers are advised to update the software on their devices.
The following is an example of the ACL workaround:
! interface GigabitEthernet0/0/0 no ip address ipv6 enable ipv6 traffic-filter drop_ANI_IPv6 in ! ipv6 access-list drop_ANI_IPv6 deny udp any host <mydeviceaddress> eq 4936 log deny udp any host <mydeviceaddress> eq 8888 log permit any any !
In the preceding example, <mydeviceaddress> is an IPv6 address. The ACL must be applied to all interfaces and all IPv6 addresses that are configured. If an interface has more than one IPv6 address configured, all addresses must be covered by the ACLs. This includes all loopback and link-local addresses for each interface.
-
Cisco has released free software updates that address the vulnerability described in this advisory. Customers may only install and expect support for software versions and feature sets for which they have purchased a license. By installing, downloading, accessing, or otherwise using such software upgrades, customers agree to follow the terms of the Cisco software license:
http://www.cisco.com/en/US/docs/general/warranty/English/EU1KEN_.htmlAdditionally, customers may only download software for which they have a valid license, procured from Cisco directly, or through a Cisco authorized reseller or partner. In most cases this will be a maintenance upgrade to software that was previously purchased. Free security software updates do not entitle customers to a new software license, additional software feature sets, or major revision upgrades.
When considering software upgrades, customers are advised to regularly consult the advisories for Cisco products, which are available from the Cisco Security Advisories and Alerts page, to determine exposure and a complete upgrade solution.
In all cases, customers should ensure that the devices to be upgraded contain sufficient memory and confirm that current hardware and software configurations will continue to be supported properly by the new release. If the information is not clear, customers are advised to contact the Cisco Technical Assistance Center (TAC) or their contracted maintenance providers.
Customers Without Service Contracts
Customers who purchase directly from Cisco but do not hold a Cisco service contract and customers who make purchases through third-party vendors but are unsuccessful in obtaining fixed software through their point of sale should obtain upgrades by contacting the Cisco TAC:
http://www.cisco.com/en/US/support/tsd_cisco_worldwide_contacts.htmlCustomers should have the product serial number available and be prepared to provide the URL of this advisory as evidence of entitlement to a free upgrade.
Cisco IOS and IOS XE Software
To help customers determine their exposure to vulnerabilities in Cisco IOS and IOS XE Software, Cisco provides a tool, the Cisco IOS Software Checker, that identifies any Cisco Security Advisories that impact a specific software release and the earliest release that fixes the vulnerabilities described in each advisory (“First Fixed”). If applicable, the tool also returns the earliest release that fixes all the vulnerabilities described in all the advisories identified (“Combined First Fixed”).
Customers can use this tool to perform the following tasks:
- Initiate a search by choosing one or more releases from a drop-down menu or uploading a file from a local system for the tool to parse
- Enter the output of the show version command for the tool to parse
- Create a custom search by including all previously published Cisco Security Advisories, a specific advisory, or all advisories in the most recent bundled publication
To determine whether a release is affected by any published Cisco Security Advisory, use the Cisco IOS Software Checker on Cisco.com or enter a Cisco IOS Software or Cisco IOS XE Software release—for example, 15.1(4)M2 or 3.1.4S—in the following field:
For a mapping of Cisco IOS XE Software releases to Cisco IOS Software releases, refer to the Cisco IOS XE 2 Release Notes, Cisco IOS XE 3S Release Notes, or Cisco IOS XE 3SG Release Notes, depending on the Cisco IOS XE Software release.
-
The Cisco Product Security Incident Response Team (PSIRT) is not aware of malicious use of the vulnerability that is described in this advisory. Omar Eissa of ERNW disclosed this vulnerability at the TROOPERS17 conference in Germany in March 2017.
-
This vulnerability was reported to Cisco by Omar Eissa of ERNW.
-
To learn about Cisco security vulnerability disclosure policies and publications, see the Security Vulnerability Policy. This document also contains instructions for obtaining fixed software and receiving security vulnerability information from Cisco.
-
Version Description Section Status Date 1.0 Initial public release. — Final 2017-March-20
-
THIS DOCUMENT IS PROVIDED ON AN "AS IS" BASIS AND DOES NOT IMPLY ANY KIND OF GUARANTEE OR WARRANTY, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. YOUR USE OF THE INFORMATION ON THE DOCUMENT OR MATERIALS LINKED FROM THE DOCUMENT IS AT YOUR OWN RISK. CISCO RESERVES THE RIGHT TO CHANGE OR UPDATE THIS DOCUMENT AT ANY TIME.
A standalone copy or paraphrase of the text of this document that omits the distribution URL is an uncontrolled copy and may lack important information or contain factual errors. The information in this document is intended for end users of Cisco products.