Description
FreeRDP before 3.26.0 contains a heap-buffer-overflow vulnerability in gdi_CacheToSurface that allows remote attackers to write out-of-bounds heap memory. The vulnerability occurs because rectangle validation clamps coordinates to UINT16_MAX but performs copy operations using unclamped cache entry dimensions, enabling malicious RDP servers to trigger large out-of-bounds writes and potentially achieve remote code execution or client crash.
Problem types
Product status
Any version before 3.26.0
3.26.0 (semver)
Credits
kevin-valerio
References
github.com/...reeRDP/security/advisories/GHSA-p6r2-4hgm-m6ff
github.com/...reeRDP/security/advisories/GHSA-p6r2-4hgm-m6ff (GHSA Advisory GHSA-p6r2-4hgm-m6ff)
github.com/...ommit/23b36cd00ebf0ccd97750fcdbc9aa2f362352da7
www.vulncheck.com/...surface-via-rectangle-validation-bypass (VulnCheck Advisory: FreeRDP - Heap-buffer-overflow in gdi_CacheToSurface via rectangle validation bypass)