Description
FreeRDP through 3.32.1 has a heap out-of-bounds write in the RDPGFX client because the delete_surface callback truncates surface hash keys to 16 bits, leaving the surface table inconsistent so HashTable_GetKeys writes past its allocated key array. A malicious or man-in-the-middle RDP server can exploit this by creating surfaceId 0xFFFF, closing the RDPGFX channel, sending repeated DELETESURFACE PDUs, and then sending ENDFRAME or RESETGRAPHICS.
Metrics
CVSS 3.1 7.5/10
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| FreeRDP | FreeRDP | <= 3.32.1 |
References
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-m59q-wm7v-mp57Exploit, Mitigation, Vendor Advisory
- https://www.vulncheck.com/advisories/freerdp-through-3.32.1-heap-out-of-bounds-write-via-rdpgfx-hashtable-getkeysThird Party Advisory
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-m59q-wm7v-mp57Exploit, Mitigation, Vendor Advisory
Timeline
- Published
- Nov 4, 2026
- Last modified
- Nov 5, 2026
- NVD status
- Analyzed