CVE-2024-32659

9.8 CRITICAL

📋 TL;DR

FreeRDP clients prior to version 3.5.1 contain an out-of-bounds read vulnerability when processing remote desktop connections with zero width and height parameters. This could allow attackers to read sensitive memory contents or cause denial of service. Any system using vulnerable FreeRDP clients to connect to remote desktops is affected.

💻 Affected Systems

Products:
  • FreeRDP
Versions: All versions prior to 3.5.1
Operating Systems: Linux, Windows, macOS, BSD
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects FreeRDP-based clients, not servers. Vulnerability triggers when connecting to malicious RDP servers.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise, though CWE-125 typically enables information disclosure or crashes.

🟠

Likely Case

Denial of service through client crashes or potential information disclosure from memory reads.

🟢

If Mitigated

Limited impact if proper network segmentation and client isolation are implemented.

🌐 Internet-Facing: MEDIUM - Requires client to connect to malicious server, but RDP clients often connect to untrusted environments.
🏢 Internal Only: LOW - Internal RDP connections typically involve trusted servers.

🎯 Exploit Status

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

Exploitation requires client to connect to malicious server. No authentication needed on client side.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.5.1

Vendor Advisory: https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-8jgr-7r33-x87w

Restart Required: Yes

Instructions:

1. Update FreeRDP to version 3.5.1 or later. 2. For package managers: 'sudo apt update && sudo apt upgrade freerdp2' (Debian/Ubuntu) or 'sudo yum update freerdp' (RHEL/Fedora). 3. Restart any running FreeRDP client processes.

🔧 Temporary Workarounds

No known workarounds

all

The advisory states no workarounds are available. Patching is required.

🧯 If You Can't Patch

  • Restrict FreeRDP client usage to trusted RDP servers only.
  • Implement network monitoring for abnormal RDP connection patterns.

🔍 How to Verify

Check if Vulnerable:

Check FreeRDP version with 'xfreerdp --version' or equivalent. If version is below 3.5.1, system is vulnerable.

Check Version:

xfreerdp --version

Verify Fix Applied:

Confirm version is 3.5.1 or higher with 'xfreerdp --version'.

📡 Detection & Monitoring

Log Indicators:

  • FreeRDP client crashes with segmentation faults
  • Abnormal termination of RDP client processes

Network Indicators:

  • RDP connections to untrusted or unknown servers
  • Multiple failed RDP connection attempts

SIEM Query:

process.name:"xfreerdp" AND event.action:"terminated" AND exit_code:"139" (for SIGSEGV)

🔗 References

📤 Share & Export