CVE-2020-3119 Overview
A vulnerability in the Cisco Discovery Protocol (CDP) implementation for Cisco NX-OS Software could allow an unauthenticated, adjacent attacker to execute arbitrary code or cause a reload on an affected device. The vulnerability exists because the CDP parser does not properly validate input for certain fields in a CDP message. An attacker could exploit this vulnerability by sending a malicious CDP packet to an affected device, resulting in a stack overflow that could allow arbitrary code execution with administrative privileges.
Critical Impact
This vulnerability enables unauthenticated attackers within the same Layer 2 broadcast domain to achieve complete device takeover with administrative privileges, potentially compromising critical network infrastructure including Cisco Nexus switches and UCS systems.
Affected Products
- Cisco NX-OS Software (multiple versions across Nexus platforms)
- Cisco Nexus 3000, 5000, 6000, and 9000 Series Switches
- Cisco UCS Manager and UCS 6200, 6300, and 6400 Series Fabric Interconnects
Discovery Timeline
- February 5, 2020 - CVE-2020-3119 published to NVD
- November 21, 2024 - Last updated in NVD database
Technical Details for CVE-2020-3119
Vulnerability Analysis
The vulnerability resides in the CDP parser component of Cisco NX-OS Software. When processing incoming CDP packets, the parser fails to adequately validate the length and content of certain fields within CDP messages. This insufficient validation allows specially crafted CDP packets to trigger a stack buffer overflow condition.
CDP operates as a Layer 2 protocol, meaning exploitation requires the attacker to be positioned within the same broadcast domain as the target device. This is typically the same VLAN or physical network segment. While this limits the attack surface compared to remotely exploitable vulnerabilities, it remains highly dangerous in environments where network segmentation is weak or where attackers have already achieved initial network access.
A successful exploit allows the attacker to execute arbitrary code with administrative (root) privileges on the affected device. Given that these devices are critical network infrastructure components, compromise could enable an attacker to intercept, modify, or redirect network traffic, establish persistent backdoor access, or pivot to other network segments.
Root Cause
The root cause is improper input validation (CWE-787: Out-of-bounds Write) in the CDP message parsing logic. The parser allocates a fixed-size stack buffer for processing CDP field data but does not properly verify that incoming field lengths do not exceed this buffer size. When an attacker sends a CDP message with oversized field values, the data overflows the allocated buffer, corrupting adjacent stack memory and potentially overwriting the return address or other critical control flow data.
Attack Vector
The attack requires the adversary to be on the same Layer 2 network segment (adjacent network access) as the target device. The attacker crafts a malicious CDP packet containing specially formatted field data designed to overflow the vulnerable stack buffer. When the target device receives and processes this packet, the overflow occurs, enabling the attacker to:
- Cause a denial of service by crashing the device (device reload)
- Achieve arbitrary code execution with administrative privileges
- Gain persistent control over the network infrastructure device
CDP is enabled by default on most Cisco NX-OS devices, meaning devices are vulnerable out of the box unless CDP has been explicitly disabled. The attack requires no authentication and no user interaction.
The vulnerability was analyzed by security researchers, with technical details published in the Packet Storm exploit report.
Detection Methods for CVE-2020-3119
Indicators of Compromise
- Unexpected device reboots or crashes on Cisco Nexus or UCS systems without administrative action
- Unusual CDP traffic patterns or malformed CDP packets visible in network captures
- Unexplained changes to device configurations or the presence of unauthorized user accounts
- Log entries indicating CDP parsing errors or memory corruption exceptions
Detection Strategies
- Deploy network intrusion detection systems (IDS) with signatures for malformed CDP packets
- Monitor for unusual Layer 2 traffic anomalies, particularly high volumes of CDP packets from unexpected sources
- Implement logging and alerting for device reload events on Cisco NX-OS infrastructure
- Use packet capture analysis to identify CDP messages with abnormally large field values
Monitoring Recommendations
- Enable syslog forwarding from all Cisco NX-OS devices to a centralized SIEM platform
- Configure alerting for unexpected device reboots or high-availability failover events
- Regularly audit CDP-enabled interfaces and consider the network exposure of each
- Monitor for unauthorized configuration changes that could indicate post-exploitation activity
How to Mitigate CVE-2020-3119
Immediate Actions Required
- Apply the security patches provided by Cisco as documented in the Cisco Security Advisory
- Disable CDP on interfaces where it is not required, particularly on external-facing or untrusted network segments
- Implement network segmentation to limit Layer 2 adjacency exposure
- Review and restrict physical and logical access to network segments containing vulnerable devices
Patch Information
Cisco has released software updates addressing this vulnerability. Administrators should consult the Cisco Security Advisory cisco-sa-20200205-nxos-cdp-rce to determine the appropriate fixed software release for their specific hardware platform and current NX-OS version. The advisory provides detailed version information for Nexus 3000, 5500, 5600, 6000, and 9000 Series switches, as well as UCS Fabric Interconnects.
Workarounds
- Disable CDP globally or on specific interfaces where the protocol is not required using the no cdp enable interface command or no cdp run global command
- Implement strict VLAN segmentation to limit the broadcast domains where attackers could position themselves
- Consider using LLDP as an alternative discovery protocol if CDP functionality is needed, though verify LLDP is not affected by similar issues
- Deploy 802.1X port-based network access control to restrict which devices can connect to network segments containing vulnerable infrastructure
# Disable CDP globally on Cisco NX-OS devices
configure terminal
no cdp run
exit
# Alternatively, disable CDP on specific interfaces
configure terminal
interface Ethernet1/1
no cdp enable
exit
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

