CVE-2026-67298 FreeRDP 3.28.0 Heap Buffer Overflow via RAIL orderLength Underflow
A malicious RDP client can trigger a heap buffer overflow in FreeRDP server via integer underflow, causing crashes or potential code execution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-67298?
CVE-2026-67298 is a high-severity vulnerability in FreeRDP, published on 1 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
FreeRDP versions 3.28.0 and earlier contain a heap buffer overflow in the server-side RAIL channel handler (rail_server_handle_messages() in channels/rail/server/rail_main.c). When processing a RAIL PDU header, the code subtracts RAIL_PDU_HEADER_LENGTH from the peer-controlled orderLength field without first verifying orderLength is at least the header length. For orderLength values 0..3 this causes an unsigned integer underflow to a very large size, which bypasses the Stream_EnsureRemainingCapacity() capacity check (due to pointer arithmetic wraparound) and is then passed to WTSVirtualChannelRead(), resulting in an out-of-bounds heap write. A malicious or compromised RDP client can exploit this to corrupt the heap and crash the server. Fixed in FreeRDP 3.29.0.
Weakness: CWE-191
Which versions are affected by CVE-2026-67298?
How do I fix CVE-2026-67298?
Upgrade to a fixed version.
Is CVE-2026-67298 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-67298 exists.
Sources
Also known as DEBIAN-CVE-2026-67298, GHSA-wrfm-6x9r-42cr, UBUNTU-CVE-2026-67298.