CVE-2024-32661

7.5 HIGH

📋 TL;DR

FreeRDP clients prior to version 3.5.1 contain a NULL pointer dereference vulnerability that can cause crashes when processing certain RDP traffic. This affects all users of vulnerable FreeRDP-based client software. The vulnerability could potentially lead to denial of service or be leveraged for further exploitation.

💻 Affected Systems

Products:
  • FreeRDP
  • Applications using FreeRDP library
  • Systems with FreeRDP-based RDP clients
Versions: All versions prior to 3.5.1
Operating Systems: Linux, Windows, macOS, BSD - any OS running FreeRDP
Default Config Vulnerable: ⚠️ Yes
Notes: All configurations using vulnerable FreeRDP versions are affected. The vulnerability is in the client-side code.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution if combined with other vulnerabilities, or persistent denial of service against FreeRDP clients

🟠

Likely Case

Client application crash leading to denial of service and potential data loss in active sessions

🟢

If Mitigated

Limited to client-side disruption with no data compromise if proper network segmentation exists

🌐 Internet-Facing: MEDIUM - Requires client to connect to malicious server, but RDP clients often connect to untrusted systems
🏢 Internal Only: MEDIUM - Internal malicious servers or compromised systems could exploit vulnerable clients

🎯 Exploit Status

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

Exploitation requires the vulnerable client to connect to a malicious RDP 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-p5m5-342g-pv9m

Restart Required: Yes

Instructions:

1. Update FreeRDP to version 3.5.1 or later. 2. For Linux systems: Use package manager (apt/yum/dnf) to update freerdp packages. 3. For Windows: Download and install latest version from official repository. 4. Restart any applications using FreeRDP.

🔧 Temporary Workarounds

No known workarounds

all

The advisory states no known workarounds exist. Patching is the only solution.

🧯 If You Can't Patch

  • Restrict RDP client connections to trusted servers only using firewall rules
  • Monitor for unexpected client crashes and investigate connections prior to crashes

🔍 How to Verify

Check if Vulnerable:

Check FreeRDP version: xfreerdp --version or freerdp --version. If version is below 3.5.1, system is vulnerable.

Check Version:

xfreerdp --version 2>/dev/null || freerdp --version 2>/dev/null || echo 'FreeRDP not found'

Verify Fix Applied:

Verify version is 3.5.1 or higher: xfreerdp --version | grep -q '3\.5\.1\|3\.[6-9]\|4\.' && echo 'Patched'

📡 Detection & Monitoring

Log Indicators:

  • FreeRDP client crash logs
  • Segmentation fault errors in system logs
  • Unexpected termination of RDP sessions

Network Indicators:

  • RDP connections to unknown/untrusted servers prior to client crashes
  • Abnormal RDP traffic patterns

SIEM Query:

source="*syslog*" AND ("segmentation fault" OR "SIGSEGV") AND ("freerdp" OR "xfreerdp")

🔗 References

📤 Share & Export