FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.27.0, rpc_client_recv_fragment in libfreerdp/core/gateway/rpc_client.c ensures the response reassembly stream capacity using only the server-declared alloc_hint rather than the actual StubLength about to be written. A malicious TS Gateway can send a PTYPE_RESPONSE with a small alloc_hint and a much larger frag_length, causing Stream_Write to copy attacker-controlled stub data beyond the 4096-byte pdu->s buffer. This can crash the client and may permit code execution through heap corruption. This issue is fixed in version 3.27.0.
Fix
Patch, vendor advisory and mitigation references on NVD 3
- https://github.com/FreeRDP/FreeRDP/commit/9f2da52c2341cc14a96ad12e69c5b83d0bcd8b5a Patch
- https://github.com/FreeRDP/FreeRDP/pull/12873 Issue Tracking, Patch
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-9gxm-3mf5-f5cx Exploit, Mitigation, Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 8.7 · freerdpNVD modified 2026-10-26 11:10
Affected (CPE criteria) 1
cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*
References 4
- https://github.com/FreeRDP/FreeRDP/commit/9f2da52c2341cc14a96ad12e69c5b83d0bcd8b5a Patch
- https://github.com/FreeRDP/FreeRDP/pull/12873 Issue Tracking, Patch
- https://github.com/FreeRDP/FreeRDP/releases/tag/3.27.0 Release Notes
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-9gxm-3mf5-f5cx Exploit, Mitigation, Vendor Advisory