CVE-2024-20321

8.6 HIGH

📋 TL;DR

This vulnerability in Cisco NX-OS Software allows unauthenticated remote attackers to cause denial of service by flooding eBGP traffic, which can drop BGP neighbor sessions and disrupt network routing. It affects Cisco Nexus switches running vulnerable NX-OS versions. Network operators using affected devices for BGP routing are at risk.

💻 Affected Systems

Products:
  • Cisco Nexus 3000 Series Switches
  • Cisco Nexus 9000 Series Switches in NX-OS mode
Versions: Multiple NX-OS versions - see Cisco advisory for specific affected releases
Operating Systems: Cisco NX-OS
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects devices with eBGP configured and vulnerable NX-OS versions. Devices in ACI mode are not affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete network outage due to BGP session failures, causing routing blackholes and loss of connectivity across multiple network segments.

🟠

Likely Case

Intermittent BGP session drops leading to routing instability, packet loss, and degraded network performance.

🟢

If Mitigated

Minimal impact with proper traffic filtering and rate limiting in place, though some performance degradation may occur during attacks.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires sending crafted eBGP traffic, which is relatively straightforward for attackers with network access.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Refer to Cisco advisory for fixed releases

Vendor Advisory: https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-nxos-ebgp-dos-L3QCwVJ

Restart Required: Yes

Instructions:

1. Check current NX-OS version. 2. Review Cisco advisory for fixed releases. 3. Schedule maintenance window. 4. Upgrade to patched version. 5. Verify BGP sessions after upgrade.

🔧 Temporary Workarounds

Implement ACLs to filter eBGP traffic

all

Apply access control lists to limit eBGP traffic from untrusted sources

ip access-list ACL-EBGP
permit tcp host <trusted-peer> eq bgp any
deny tcp any eq bgp any
interface <interface>
ip access-group ACL-EBGP in

Implement CoPP (Control Plane Policing)

all

Apply rate limiting to control plane traffic to protect against flooding attacks

class-map match-any COPP-BGP
match access-group name ACL-EBGP
policy-map COPP-POLICY
class COPP-BGP
police <rate> conform-action transmit exceed-action drop
control-plane
service-policy input COPP-POLICY

🧯 If You Can't Patch

  • Implement strict BGP session filtering and only allow connections from trusted peers
  • Deploy network monitoring to detect abnormal eBGP traffic patterns and potential attacks

🔍 How to Verify

Check if Vulnerable:

Check NX-OS version with 'show version' and compare against Cisco advisory affected versions list

Check Version:

show version | include nxos

Verify Fix Applied:

Verify upgraded to patched version with 'show version' and monitor BGP sessions for stability

📡 Detection & Monitoring

Log Indicators:

  • BGP neighbor state changes
  • BGP session flaps
  • Control plane policing violations
  • High CPU usage on control plane

Network Indicators:

  • Abnormal eBGP traffic spikes
  • TCP port 179 traffic from unexpected sources
  • BGP keepalive timeouts

SIEM Query:

source="nxos_logs" ("BGP-5-ADJCHANGE" OR "BGP-3-BACKWARDTRANSITION") | stats count by host

🔗 References

📤 Share & Export