CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H/E:X/RL:X/RC:X
-
A vulnerability in the Cisco Discovery Protocol implementation for Cisco FXOS Software, Cisco IOS XR Software, and Cisco NX-OS Software could allow an unauthenticated, adjacent attacker to cause a reload of an affected device, resulting in a denial of service (DoS) condition.
The vulnerability is due to a missing check when the affected software processes Cisco Discovery Protocol messages. An attacker could exploit this vulnerability by sending a malicious Cisco Discovery Protocol packet to an affected device. A successful exploit could allow the attacker to exhaust system memory, causing the device to reload.
Note: Cisco Discovery Protocol is a Layer 2 protocol. To exploit this vulnerability, an attacker must be in the same broadcast domain as the affected device (Layer 2 adjacent).
Cisco has released software updates that address this vulnerability. There are no workarounds that address this vulnerability.
This advisory is available at the following link:
https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20200205-fxnxos-iosxr-cdp-dos
-
Vulnerable Products
This vulnerability affects the following Cisco products if they have Cisco Discovery Protocol enabled both globally and on at least one interface and if they are running a vulnerable release of Cisco FXOS, IOS XR (32-bit or 64-bit), or NX-OS Software:
- ASR 9000 Series Aggregation Services Routers
- Carrier Routing System (CRS)
- Firepower 4100 Series
- Firepower 9300 Security Appliances
- IOS XRv 9000 Router
- MDS 9000 Series Multilayer Switches
- Network Convergence System (NCS) 540 Series Routers
- Network Convergence System (NCS) 560 Series Routers
- Network Convergence System (NCS) 1000 Series
- Network Convergence System (NCS) 5000 Series
- Network Convergence System (NCS) 5500 Series
- Network Convergence System (NCS) 6000 Series
- Nexus 1000 Virtual Edge for VMware vSphere
- Nexus 1000V Switch for Microsoft Hyper-V
- Nexus 1000V Switch for VMware vSphere
- Nexus 3000 Series Switches
- Nexus 5500 Platform Switches
- Nexus 5600 Platform Switches
- Nexus 6000 Series Switches
- Nexus 7000 Series Switches
- Nexus 9000 Series Fabric Switches in Application Centric Infrastructure (ACI) mode
- Nexus 9000 Series Switches in standalone NX-OS mode
- UCS 6200 Series Fabric Interconnects
- UCS 6300 Series Fabric Interconnects
- UCS 6400 Series Fabric Interconnects
This vulnerability also affects third-party white box routers if they have Cisco Discovery Protocol enabled both globally and on at least one interface and if they are running a vulnerable release of Cisco IOS XR Software.
Note: Cisco Discovery Protocol is disabled by default in Cisco IOS XR Software. Cisco Discovery Protocol is enabled by default both globally and on all interfaces in Cisco FXOS and NX-OS Software.
For information about which Cisco FXOS, IOS XR, and NX-OS Software releases are vulnerable, see the Fixed Software section of this advisory.
Determine the Status of Cisco Discovery Protocol for Cisco FXOS Software
Cisco Discovery Protocol is always enabled on the management (mgmt0) port. In Cisco FXOS Software releases earlier than 2.1, Cisco Discovery Protocol is always enabled on all front-panel ports as well.
Determine the Status of Cisco Discovery Protocol for Cisco IOS XR Software
Administrators can determine whether Cisco Discovery Protocol is enabled on a device by using the show running-config | include cdp command in the device CLI. If the command returns at least the following lines, Cisco Discovery Protocol is enabled globally and on at least one interface:
RP/0/RP0/CPU0:ios#show running-config | include cdp Mon Dec 2 17:00:27.921 UTC Building configuration... cdp cdp . . .
Determine the Status of Cisco Discovery Protocol on Cisco Nexus Switches That Are Running Cisco NX-OS Software
Administrators can determine whether Cisco Discovery Protocol is enabled on a device by using the show running-config cdp all | include "cdp enable" command in the device CLI. If the command returns at least the following lines, Cisco Discovery Protocol is enabled globally and on at least one interface:
nxos# show running-config cdp all | include "cdp enable" cdp enable cdp enable
Determine the Status of Cisco Discovery Protocol on Cisco UCS Fabric Interconnects
Cisco Discovery Protocol is always enabled on Ethernet uplink ports (network interfaces that connect to upstream switches for network connectivity), Ethernet port channel members, FCoE uplink ports, and management ports.
Administrators can determine whether Cisco Discovery Protocol is also enabled on server ports (interfaces that are presented to the servers in the Cisco UCS Manager domain) and appliance ports (interfaces that connect to directly attached NFS storage) on a device by using the show configuration | egrep "^ scope|enable cdp" command in the device CLI. If the command returns the enable cdp command under the org scope, Cisco Discovery Protocol is enabled on server ports, and if the command returns enable cdp under the eth-storage scope, Cisco Discovery Protocol is enabled on appliance ports, as shown in the following example:
ucs-fi# show configuration | egrep "^ scope|enable cdp" . . . scope org enable cdp . . . scope eth-storage enable cdp . . .
Products Confirmed Not Vulnerable
Only products listed in the Vulnerable Products section of this advisory are known to be affected by this vulnerability.
Cisco has confirmed that this vulnerability does not affect the following Cisco products:
- Firepower 1000 Series
- Firepower 2100 Series
- Network Convergence System (NCS) 520 Series Routers
-
There are no workarounds that address this vulnerability.
However, customers who do not use the Cisco Discovery Protocol feature can disable it either globally to fully close the attack vector or on individual interfaces to reduce the attack surface.
Disable Cisco Discovery Protocol in Cisco FXOS Software
Cisco Discovery Protocol is always enabled and cannot be disabled in Cisco FXOS Software. In Cisco FXOS Software releases 2.1 and later, Cisco Discovery Protocol is enabled on the management (mgmt0) port only.
Disable Cisco Discovery Protocol Globally in Cisco IOS XR Software
To disable Cisco Discovery Protocol globally on devices running Cisco IOS XR Software, administrators can use the no cdp command in global configuration mode, as shown in the following example:
RP/0/RP0/CPU0:ios#conf t Mon Dec 2 17:58:08.556 UTC RP/0/RP0/CPU0:ios(config)#no cdp RP/0/RP0/CPU0:ios(config)#exit Uncommitted changes found, commit them before exiting(yes/no/cancel)? [cancel]:yes
Disable Cisco Discovery Protocol on an Interface in Cisco IOS XR Software
To disable Cisco Discovery Protocol a particular interface on a particular device that is running Cisco IOS XR Software, administrators can use the no cdp command in interface configuration mode, as shown in the following example:
RP/0/RP0/CPU0:ios#conf t Mon Dec 2 18:00:08.622 UTC RP/0/RP0/CPU0:ios(config)#interface GigabitEthernet0/0/0/0 RP/0/RP0/CPU0:ios(config-if)#no cdp RP/0/RP0/CPU0:ios(config-if)#end Uncommitted changes found, commit them before exiting(yes/no/cancel)? [cancel]:yes
Disable Cisco Discovery Protocol Globally on Cisco Nexus Switches That Are Running Cisco NX-OS Software
To disable Cisco Discovery Protocol globally on Cisco Nexus Switches that are running Cisco NX-OS Software, administrators can use the no cdp enable command in global configuration mode, as shown in the following example:
nxos# conf t Enter configuration commands, one per line. End with CNTL/Z. nxos(config)# no cdp enable nxos(config)# end nxos# copy running-config startup-config [########################################] 100% Copy complete.
Disable Cisco Discovery Protocol on an Interface on Cisco Nexus Switches That Are Running Cisco NX-OS Software
To disable Cisco Discovery Protocol on an interface on Cisco Nexus Switches that are running Cisco NX-OS Software, administrators can use the no cdp enable command in interface configuration mode, as shown in the following example:
nxos# conf t Enter configuration commands, one per line. End with CNTL/Z. nxos(config)# interface Ethernet1/1 nxos(config-if)# no cdp enable nxos(config-if)# end nxos# copy running-config startup-config [########################################] 100% Copy complete.
Disable Cisco Discovery Protocol on Cisco UCS Fabric Interconnects
Cisco Discovery Protocol cannot be disabled completely on Cisco UCS Fabric Interconnects.
Cisco Discovery Protocol can be disabled on server ports and appliance ports on Cisco UCS Fabric Interconnects, but it cannot be disabled on Ethernet uplink ports, Ethernet port channel members, FCoE uplink ports, or management ports.
To disable Cisco Discovery Protocol on the server ports of a Cisco UCS Fabric Interconnect, administrators can use the disable cdp command in the default nw-ctrl-policy in the org scope, as shown in the following example:
ucs-fi# scope org ucs-fi /org # enter nw-ctrl-policy default ucs-fi /org/nw-ctrl-policy # disable cdp ucs-fi /org/nw-ctrl-policy* # exit ucs-fi /org* # exit ucs-fi* # commit-buffer ucs-fi#
To disable Cisco Discovery Protocol on the appliance ports of a Cisco UCS Fabric Interconnect, administrators can use the disable cdp command in the default nw-ctrl-policy in the eth-storage scope, as shown in the following example:
ucs-fi* # scope eth-storage ucs-fi /eth-storage* # enter nw-ctrl-policy default ucs-fi /eth-storage/nw-ctrl-policy* # disable cdp ucs-fi /eth-storage/nw-ctrl-policy* # exit ucs-fi /eth-storage* # exit ucs-fi* # commit-buffer ucs-fi#
-
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:
https://www.cisco.com/c/en/us/products/end-user-license-agreement.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:
https://www.cisco.com/c/en/us/support/web/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.
Fixed Releases
In the following table(s), the left column lists Cisco software releases. The right column indicates whether a release is affected by the vulnerability described in this advisory and the first release that includes the fix for this vulnerability.
Firepower 4100 Series and Firepower 9300 Security Appliances: CSCvr15083
Cisco FXOS Software Release
First Fixed Release for This Vulnerability Earlier than 2.2
Migrate to a fixed release
2.2
Migrate to a fixed release
2.3
2.3.1.173
2.4
Release no. TBD (May 2020)
2.6
2.6.1.187
2.7
2.7.1.106
Note: In Cisco FXOS Software releases 2.1 and later, this vulnerability is exploitable only via the management (mgmt0) port. In these releases Cisco Discovery Protocol is never actually enabled on front-panel ports, even if it is configured.
IOS XR Software: CSCvr15024
Cisco IOS XR Software Release
First Fixed Release for This Vulnerability
Earlier than 6.6
Appropriate SMU
6.61
6.6.3 or appropriate SMU
7.0
7.0.2 (Mar 2020) or appropriate SMU
7.1
Not vulnerable
The following SMUs are also available for Cisco IOS XR Software:
Cisco IOS XR Software Release
Platform SMU Name
5.2.5 NCS6K ncs6k-5.2.5.CSCvr78185
6.4.2 ASR9K-PX
asr9k-px-6.4.2.CSCvr78185
CRS-PX hfr-px-6.4.2.CSCvr78185 6.5.3
ASR9K-PX asr9k-px-6.5.3.CSCvr78185
ASR9K-X64
asr9k-x64-6.5.3.CSCvr78185 NCS540
ncs540-6.5.3.CSCvr78185 NCS560
ncs560-6.6.25.CSCvr78185
NCS5K
ncs5k-6.5.3.CSCvr78185
NCS5500
ncs5500-6.5.3.CSCvr78185
XRV9K
xrv9k-6.5.3.CSCvr78185
6.6.12 White box
iosxrwbd-6.6.12.CSCvr78185
6.6.25 NCS560 ncs560-6.6.25.CSCvr78185 7.0.1
NCS540L ncs540l-7.0.1.CSCvr78185
For details on where to download and how to install SMUs in Cisco IOS XR Software, see the IOS XR Software Maintenance Updates (SMUs) guide.
MDS 9000 Series Multilayer Switches: CSCvr15073
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
5.2
6.2(29)
6.2
6.2(29)
7.3
8.4(1a)
8.1
8.4(1a)
8.2
8.4(1a)
8.3
8.4(1a)
8.4
8.4(1a)
Nexus 1000 Virtual Edge for VMware vSphere: CSCvr15078
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
5.2
5.2(1)SV5(1.3)
Nexus 1000V Switch for Microsoft Hyper-V: CSCvr15078
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 5.2
No fix available1
5.2
No fix available1
Nexus 1000V Switch for VMware vSphere: CSCvr15078
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 5.2
5.2(1)SV3(4.1b)
5.2
5.2(1)SV3(4.1b)
Nexus 3000 Series Switches and Nexus 9000 Series Switches in Standalone NX-OS Mode: CSCvr14976
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 7.0(3)I
7.0(3)I7(8) (Feb 2020) or appropriate SMU1 7.0(3)I 7.0(3)I7(8) (Feb 2020) or appropriate SMU1
7.0(3)F2
9.3(2) 9.2 9.3(2) 9.3 9.3(2)
2. The Cisco NX-OS Software 7.0(3)F train runs on only Cisco Nexus 3600 Platform Switches and Cisco Nexus 9500 R-Series Switching Platform and is no longer maintained. Customers are advised to migrate to Cisco NX-OS Software releases 9.2 or later.SMU Installation Instructions
To download SMUs from the Software Center on Cisco.com, do the following:
- Click Browse All.
- Choose IOS and NX-OS Software > NX-OS > NX-OS Software > Switches > Data Center Switches.
- Choose the appropriate product and model.
- Choose NX-OS Software Maintenance Upgrades (SMU).
- Choose a release from the left pane of the appropriate product page.
Note: The SMU filenames follow this format: CSCvr09175-n9k_ALL-1.0.0-<NX-OS_Release>.lib32_n9000.rpm. For example, the SMU filename for Cisco NX-OS Software Release 7.0(3)I7(6) is CSCvr09175-n9k_ALL-1.0.0-7.0.3.I7.6.lib32_n9000.rpm.
To install the appropriate SMU, copy the SMU to the Bootflash: file system for the switch and execute the following commands, which activate the fix (this is a hot patch):
- install add bootflash:<SMU_filename> activate
- install commit
The following example shows the commands for installing the SMU for Cisco NX-OS Software Release 7.0(3)I7(6):
nx-os# install add bootflash:CSCvr09175-n9k_ALL-1.0.0-7.0.3.I7.6.lib32_n9000.rpm activate nx-os# install commit
Note: These instructions apply to only this particular type of SMU.
Nexus 5500 and 5600 Platform Switches and Nexus 6000 Series Switches: CSCvr15079
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 7.1
7.3(6)N1(1) 7.1 7.3(6)N1(1)
7.3
7.3(6)N1(1)
Nexus 7000 Series Switches: CSCvr15073
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 6.2
6.2(24)
6.2
6.2(24)
7.2 7.3(5)D1(1)
7.3
7.3(5)D1(1)
8.0
8.2(5)
8.1
8.2(5)
8.2
8.2(5)
8.3
8.4(2) (Mar 2020) or appropriate SMU1
8.4
8.4(2) (Mar 2020) or appropriate SMU1
For details on where to download and how to install SMUs in Cisco NX-OS Software for Cisco Nexus 7000 Series Switches, see the Performing Software Maintenance Upgrades chapter of the Cisco Nexus 7000 Series NX-OS System Management Configuration Guide.
Nexus 9000 Series Fabric Switches in ACI Mode: CSCvr15072
Cisco NX-OS Software Release
First Fixed Release for This Vulnerability
Earlier than 13.1
13.2(9b) 13.1
13.2(9b)
13.2
13.2(9b) 14.0
14.2(1j) 14.1
14.2(1j) 14.2
14.2(1j)
UCS 6200, 6300, and 6400 Series Fabric Interconnects: CSCvr15082 and CSCvr15111
Cisco UCS Software Release
First Fixed Release for This Vulnerability
Earlier than 3.2
3.2(3n)
3.2 3.2(3n)
4.0 4.0(4g)
Additional Resources
For help determining the best Cisco NX-OS Software release for a Cisco Nexus Switch, administrators can refer to the following Recommended Releases documents. If a security advisory recommends a later release, Cisco recommends following the advisory guidance.
Cisco MDS Series Switches
Cisco Nexus 1000V for VMware Switch
Cisco Nexus 3000 Series Switches
Cisco Nexus 5500 Platform Switches
Cisco Nexus 5600 Platform Switches
Cisco Nexus 6000 Series Switches
Cisco Nexus 7000 Series Switches
Cisco Nexus 9000 Series Switches
Cisco Nexus 9000 Series ACI-Mode Switches
-
The Cisco Product Security Incident Response Team (PSIRT) is aware of public announcements about the vulnerability that is described in this advisory. Cisco PSIRT is not aware of any malicious use of this vulnerability.
-
Cisco would like to thank Barak Hadad of Armis for reporting this vulnerability.
-
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.3 Updated available first fixed releases tables. Fixed Software Interim 2020-February-21 1.2 Removed FXOS 2.5 which does not exist. Updated FXOS CDP information under Vulnerable Products and Workarounds. Vulnerable Products, Workarounds, Fixed Software Interim 2020-February-07 1.1 Corrected information around when Cisco FXOS and Cisco UCS Fabric Interconnects are vulnerable, mitigation options for Cisco FXOS and Cisco UCS Fabric Interconnects and vulnerable and first fixed releases for Cisco FXOS and Cisco Nexus 1000 Virtual Edge for VMware vSphere. Vulnerable Products, Workarounds, Fixed Software Interim 2020-February-06 1.0 Initial public release. — Interim 2020-February-05
-
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. CISCO EXPECTS TO UPDATE THIS DOCUMENT AS NEW INFORMATION BECOMES AVAILABLE.
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.