Description
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.21.0, in ClearCodec, when `glyphData` is present, `clear_decompress` calls `freerdp_image_copy_no_overlap` without validating the destination rectangle, allowing an out-of-bounds read/write via crafted RDPGFX surface updates. A malicious server can trigger a client‑side heap buffer overflow, causing a crash (DoS) and potential heap corruption with code‑execution risk depending on allocator behavior and surrounding heap layout. Version 3.21.0 contains a patch for the issue.
Problem types
CWE-122: Heap-based Buffer Overflow
Product status
References
github.com/...reeRDP/security/advisories/GHSA-xj5h-9cr5-23c5
github.com/...6cfbcec279033f8394468/libfreerdp/codec/clear.c
github.com/FreeRDP/FreeRDP/releases/tag/3.21.0