Impact
FreeRDP server‑side code handling the RAIL channel does not validate the orderLength field supplied by a client. The handler subtracts the RAIL PDU header length from this peer‑controlled value without first confirming that the value is at least that large. When an orderLength of 0 to 3 is used, the subtraction underflows an unsigned integer, producing an astronomically large length that bypasses the stream’s capacity check and is then used to write beyond the end of a heap buffer during a channel read. The resulting heap corruption causes the server to crash but does not provide a direct path to arbitrary code execution, leaving the primary impact as a denial of service by crashing the FreeRDP daemon or RDP server process.
Affected Systems
FreeRDP, server‑side RAIL channel handler versions 3.28.0 and earlier are affected. The vulnerability applies to all deployments that use the RAIL channel in these releases of FreeRDP.
Risk and Exploitability
The CVSS score of 8.7 indicates a high severity. EPSS data is not available, and the vulnerability is not listed in the CISA KEV catalog. Attackers can exploit the flaw from a remote RDP client that can establish a valid RDP session and send a crafted RAIL PDU. No privileged escalation is required; the issue is triggered by the client during normal channel operation, making it a straightforward attack path for any remote RDP participant.
OpenCVE Enrichment