CVE-2026-91950
massInteger-wrap out-of-bounds read in FreeRDP client (rdpdr) prior to 3.31.0
FreeRDP before 3.31.0 contains an out-of-bounds read (CWE-125) in the rdpdr_dump_packet function, caused by 32-bit unsigned integer wraparound in the buffer bounds validation. A malicious RDP server exploits this by sending a crafted RDPDR packet with computerNameLen set to 0xFFFFFFF0, which wraps the length check and causes memory reads past the end of the packet buffer. The attacker gains a denial of service (client crash, Availability impact rated High per CVSS 4.0 score 7.1) and potential heap memory disclosure into client logs, since the dump routine prints packet contents. This is a reversed attack direction: the victim is any FreeRDP-based client user who connects to an attacker-controlled or compromised RDP server, which is why the CVSS vector includes user interaction. No public proof of concept is known and the flaw is not in the CISA KEV catalog, so exploitation status is none known.
What to do: Upgrade FreeRDP to 3.31.0 or later, or apply your distribution's patched package as soon as it is available. As mitigations, restrict client connections to trusted, known RDP servers and disable verbose/debug logging (the RDPDR packet dump) so any residual out-of-bounds data is not written to logs. Organizations should inventory embedded products (thin clients, remote-access tools) that bundle FreeRDP and verify they are not shipping a version older than 3.31.0.
| FreeRDP | before 3.31.0 (all versions prior to 3.31.0) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
FreeRDP before 3.31.0 contains an out-of-bounds read vulnerability in the rdpdr_dump_packet function due to 32-bit unsigned integer wraparound in buffer bounds validation. A malicious RDP server can send a crafted RDPDR packet with computerNameLen set to 0xFFFFFFF0 to bypass bounds checks and trigger memory reads past the packet buffer, causing client crashes or heap disclosure in logs.
- Weakness
- CWE-125
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
In the news0 stories
No ingested article mentions this CVE yet.