Description (CNA)
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.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| FreeRDP / FreeRDP | affected < 3.27.0 |
CWE
CWE-122
References
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-9gxm-3mf5-f5cx
- https://github.com/FreeRDP/FreeRDP/pull/12873
- https://github.com/FreeRDP/FreeRDP/commit/9f2da52c2341cc14a96ad12e69c5b83d0bcd8b5a
- https://github.com/FreeRDP/FreeRDP/releases/tag/3.27.0
ADP enrichment
No English description supplied.
No references supplied.