Cisco Security Advisory
Cisco FXOS and NX-OS Software Cisco Discovery Protocol Denial of Service and Arbitrary Code Execution Vulnerability
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:X/RL:X/RC:X
-
A vulnerability in the Cisco Discovery Protocol feature of Cisco FXOS Software and Cisco NX-OS Software could allow an unauthenticated, adjacent attacker to execute arbitrary code with root privileges or cause a denial of service (DoS) condition on an affected device.
This vulnerability is due to improper input validation of specific values that are within a Cisco Discovery Protocol message. 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 execute arbitrary code with root privileges or cause the Cisco Discovery Protocol process to crash and restart multiple times, which would cause the affected device to reload, resulting in a DoS condition.
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-nxos-cdp-dos-ce-wWvPucC9This advisory is part of the August 2022 Cisco FXOS and NX-OS Software Security Advisory Bundled Publication. For a complete list of the advisories and links to them, see Cisco Event Response: August 2022 Semiannual Cisco FXOS and NX-OS Software Security Advisory Bundled Publication.
-
Vulnerable Products
This vulnerability affects the following Cisco products if they are running a vulnerable release of Cisco FXOS or NX-OS Software and have Cisco Discovery Protocol enabled both globally and on at least one interface:
- Firepower 4100 Series (CSCwb74498)
- Firepower 9300 Security Appliances (CSCwb74498)
- MDS 9000 Series Multilayer Switches (CSCwb74494)
- Nexus 1000 Virtual Edge for VMware vSphere (CSCwb74495)
- Nexus 1000V Switch for Microsoft Hyper-V (CSCwb74495)
- Nexus 1000V Switch for VMware vSphere (CSCwb74495)
- Nexus 3000 Series Switches (CSCwb70210)
- Nexus 5500 Platform Switches (CSCwb74496)
- Nexus 5600 Platform Switches (CSCwb74496)
- Nexus 6000 Series Switches (CSCwb74496)
- Nexus 7000 Series Switches (CSCwb74494)
- Nexus 9000 Series Fabric Switches in ACI mode (CSCwb74493)
- Nexus 9000 Series Switches in standalone NX-OS mode (CSCwb70210)
- UCS 6200 Series Fabric Interconnects (CSCwb74497)
- UCS 6300 Series Fabric Interconnects (CSCwb74497)
- UCS 6400 Series Fabric Interconnects (CSCwb74513)
Note: Cisco Discovery Protocol is enabled by default on all of the products in the preceding list except Cisco Nexus 9000 Series Fabric Switches in ACI mode.
For information about which Cisco software releases are vulnerable, see the Fixed Software section of this advisory.
Determine the Status of Cisco Discovery Protocol for Cisco FXOS Software
In all releases of Cisco FXOS Software, Cisco Discovery Protocol is always enabled on the management (mgmt0) port. In Cisco FXOS Software releases earlier than Release 2.1, Cisco Discovery Protocol is always enabled on all front-panel ports as well as the management (mgmt0) port.
Determine the Status of Cisco Discovery Protocol on Cisco MDS and Nexus Switches that are Running Cisco NX-OS Software
To determine whether Cisco Discovery Protocol is enabled on a Cisco MDS or Nexus Switch that is running Cisco NX-OS Software, use 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
In addition, the show cdp all command can be used to verify the status of Cisco Discovery Protocol on all interfaces of the device.
Determine the Status of Cisco Discovery Protocol on Cisco Nexus 9000 Series Fabric Switches in ACI mode
Cisco Discovery Protocol is disabled by default on Cisco Nexus 9000 Series Fabric Switches in ACI mode. To determine the status of Cisco Discovery Protocol on all interfaces of a device, use the show cdp all command in the device CLI. To determine if Cisco Discovery Protocol is enabled on at least one interface, use the show cdp all | grep "enabled on" command. If the command returns any output, as in the following example, Cisco Discovery Protocol is enabled on at least one interface:
nxos# show cdp all | grep "enabled on" CDP enabled on interface
Determine the Status of Cisco Discovery Protocol on Cisco UCS Fabric Interconnects
On Cisco UCS 6200, 6300, and 6400 Series Fabric Interconnects, Cisco Discovery Protocol is always enabled on the following ports:
- Ethernet uplink ports (network interfaces that connect to upstream switches for network connectivity)
- Ethernet port channel members
- Fibre Channel over Ethernet (FCoE) uplink ports
- Management ports
Cisco Discovery Protocol may also be 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). To determine the status of Cisco Discovery Protocol on these ports, use the show configuration | egrep "^ scope|enable cdp" command in the device CLI. If the command returns enable cdp under the org scope, Cisco Discovery Protocol is enabled on server ports. If the command returns enable cdp under the eth-storage scope, Cisco Discovery Protocol is enabled on appliance ports. The following example shows the output of the command on a device that has Cisco Discovery Protocol enabled on server ports and appliance ports:
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
-
There are no workarounds that address this vulnerability.
However, customers who do not use Cisco Discovery Protocol can disable the feature 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 on Cisco MDS and Nexus Switches that are Running Cisco NX-OS Software
To disable Cisco Discovery Protocol globally on a Cisco MDS or Nexus Switch, 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 MDS and Nexus Switches that are Running Cisco NX-OS Software
To disable Cisco Discovery Protocol on an interface on a Cisco MDS or Nexus Switch, 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, 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, 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#
While these mitigations have been deployed and were proven successful in a test environment, customers should determine the applicability and effectiveness in their own environment and under their own use conditions. Customers should be aware that any workaround or mitigation that is implemented may negatively impact the functionality or performance of their network based on intrinsic customer deployment scenarios and limitations. Customers should not deploy any workarounds or mitigations before first evaluating the applicability to their own environment and any impact to such environment.
-
Cisco has released free software updates that address the vulnerability described in this advisory. Customers with service contracts that entitle them to regular software updates should obtain security fixes through their usual update channels.
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.
The Cisco Support and Downloads page on Cisco.com provides information about licensing and downloads. This page can also display customer device support coverage for customers who use the My Devices tool.
When considering software upgrades, customers are advised to regularly consult the advisories for Cisco products, which are available from the Cisco Security Advisories 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.html
Customers 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 FXOS and NX-OS Software
To help customers determine their exposure to vulnerabilities in Cisco FXOS and NX-OS Software, Cisco provides the Cisco Software Checker. This tool identifies any Cisco security advisories that impact a specific software release and the earliest release that fixes the vulnerabilities that are described in each advisory (“First Fixed”). If applicable, the tool also returns the earliest release that fixes all the vulnerabilities that are described in all the advisories that the Software Checker identifies (“Combined First Fixed”).
To use the tool, go to the Cisco Software Checker page and follow the instructions. Alternatively, use the following form to search for vulnerabilities that affect a specific software release. To use the form, follow these steps:
- Choose which advisories the tool will search-only this advisory, only advisories with a Critical or High Security Impact Rating (SIR), or all advisories.
- Choose the appropriate software.
- Choose the appropriate platform.
- Enter a release number-for example, 2.9.1.158 for Cisco Firepower 4100 Series Security Appliances or 7.0(3)I7(5) for Cisco Nexus 3000 Series Switches.
- Click Check.
Cisco Nexus 3000, 7000, and 9000 Series Switches SMUs
Cisco has released the following SMUs to address this vulnerability. Customers can download the SMUs from the Software Center on Cisco.com.
Cisco NX-OS Software Release Platform SMU Name 8.2(8) Nexus 7000 Series Switches n7000-s2-dk9.8.2.8.CSCwc36631.bin
n7700-s2-dk9.8.2.8.CSCwc36631.bin9.3(9) Nexus 3000 and 9000 Series Switches nxos.CSCwb70210-n9k_ALL-1.0.0-9.3.9.lib32_n9000.rpm For details about downloading and installing SMUs in Cisco NX-OS Software for Cisco Nexus 3000, 7000, and 9000 Series Switches, see the Performing Software Maintenance Upgrades section of the Cisco NX-OS system management configuration guide for Cisco Nexus 3000 Series Switches, Cisco Nexus 7000 Series Switches, and Cisco Nexus 9000 Series Switches.
Cisco UCS Software
In the following table(s), the left column lists Cisco software releases. The center 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. The right column indicates whether a release is affected by all of the High and Critical vulnerabilities described in this bundle and which release includes fixes for those vulnerabilities.
UCS 6200, 6300, and 6400 Series Fabric Interconnects
Cisco UCS Software Release First Fixed Release for This Vulnerability First Fixed Release for All Vulnerabilities Described in the Bundle of Advisories Earlier than 4.1 Migrate to a fixed release. Migrate to a fixed release. 4.1 4.1(3i) 4.1(3i) 4.2 4.2(1n) 4.2(1n) The Cisco Product Security Incident Response Team (PSIRT) validates only the affected and fixed release information that is documented in this advisory.
Additional Resources
For help determining the best Cisco NX-OS Software release for a Cisco Nexus Switch, see 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 SwitchesTo determine the best release for Cisco UCS Software, see the Recommended Releases documents in the release notes for the device.
-
The Cisco PSIRT is not aware of any public announcements or malicious use of the vulnerability that is described in this advisory.
-
Cisco would like to thank an anonymous researcher working with the National Cyber Security Centre of the Netherlands 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.0 Initial public release. - Final 2022-AUG-24
-
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.