CVE-2023-50257

9.6 CRITICAL

📋 TL;DR

This vulnerability in eProsima Fast DDS allows attackers to forcibly disconnect subscribers and prevent new connections by sending unencrypted disconnect packets. It affects systems using Fast DDS with SROS2 security enabled, enabling denial-of-service attacks against DDS communications. The vulnerability has been present since 2016 in multiple versions.

💻 Affected Systems

Products:
  • eProsima Fast DDS
  • Fast RTPS
Versions: All versions prior to 2.13.0, 2.12.2, 2.11.3, 2.10.3, and 2.6.7
Operating Systems: All operating systems running Fast DDS
Default Config Vulnerable: ⚠️ Yes
Notes: Requires SROS2 security to be enabled. The vulnerability exists in the SecurityManager implementation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete disruption of all DDS communications in a system, causing critical services to fail due to inability to exchange data between publishers and subscribers.

🟠

Likely Case

Targeted denial-of-service attacks against specific DDS topics or participants, disrupting real-time data flows in robotics, industrial control, or autonomous systems.

🟢

If Mitigated

Limited impact if network segmentation prevents attackers from reaching the multicast address or if intrusion detection systems block malicious packets.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

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

Exploitation requires network access to the multicast address 239.255.0.1:7400 and knowledge of publisher GUIDs.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.13.0, 2.12.2, 2.11.3, 2.10.3, or 2.6.7

Vendor Advisory: https://github.com/eProsima/Fast-DDS/security/advisories/GHSA-v5r6-8mvh-cp98

Restart Required: Yes

Instructions:

1. Identify your Fast DDS version. 2. Upgrade to a patched version using your package manager or by building from source. 3. Restart all Fast DDS applications.

🔧 Temporary Workarounds

Network Segmentation

linux

Block access to multicast address 239.255.0.1:7400 from untrusted networks

iptables -A INPUT -d 239.255.0.1 -j DROP
iptables -A INPUT -p udp --dport 7400 -j DROP

Disable SROS2 Security

all

Temporarily disable SROS2 security if not required, though this reduces overall security

Set ROS_SECURITY_ENABLE=false in environment or configuration

🧯 If You Can't Patch

  • Implement strict network access controls to prevent unauthorized access to port 7400 and multicast traffic.
  • Deploy network intrusion detection systems to monitor for malicious disconnect packets targeting the DDS multicast address.

🔍 How to Verify

Check if Vulnerable:

Check Fast DDS version and verify it's below patched versions. Review if SROS2 security is enabled in configuration.

Check Version:

fastdds --version or check package manager (apt list --installed | grep fastdds)

Verify Fix Applied:

Verify Fast DDS version is 2.13.0, 2.12.2, 2.11.3, 2.10.3, or 2.6.7 or higher. Test DDS connectivity remains stable during simulated attack conditions.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected subscriber disconnections
  • Failed connection attempts despite valid credentials
  • Security manager handshake failures

Network Indicators:

  • Unusual UDP traffic to 239.255.0.1:7400
  • Disconnect packets (p[UD]) from unexpected sources
  • Spike in RTPS protocol error messages

SIEM Query:

source_ip!=trusted_network AND dest_ip=239.255.0.1 AND dest_port=7400 AND protocol=UDP

🔗 References

📤 Share & Export