
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-23531 is a heap-based buffer overflow vulnerability in FreeRDP's ClearCodec decompression logic that allows a malicious RDP server to trigger a client-side crash or potential remote code execution. It affects all FreeRDP versions prior to 3.21.0 and was disclosed on January 19, 2026, by researcher ehdgks0627. The vulnerability carries a CVSS v3.1 base score of 9.8 (Critical) and a CVSS v4.0 base score of 7.7 (High) (GitHub Advisory, Red Hat CVE).
The root cause is classified as CWE-122 (Heap-based Buffer Overflow). In libfreerdp/codec/clear.c (lines 1139–1145), when a glyphData buffer is present during ClearCodec decompression, clear_decompress calls freerdp_image_copy_no_overlap using destination rectangle coordinates (nXDst, nYDst, nWidth, nHeight) sourced directly from the RDPGFX WireToSurface1 PDU without validating them against the target surface dimensions. The destRect values are only checked for ordering (left < right, top < bottom) in rdpgfx_read_rect16 but are never clamped to the surface bounds before being forwarded through gdi_SurfaceCommand_ClearCodec into clear_decompress. Since freerdp_image_copy_no_overlap performs no internal bounds checking, a crafted destRect that extends beyond the allocated surface buffer results in out-of-bounds reads and writes on the client heap. A public AddressSanitizer-confirmed proof-of-concept is included in the GitHub Security Advisory (GitHub Advisory, Vulnerable Code).
A malicious or compromised RDP server can send crafted RDPGFX surface update packets to any connecting FreeRDP client, triggering a heap buffer overflow that at minimum causes an application crash (denial of service). Depending on heap layout and allocator behavior, the out-of-bounds write may enable heap corruption sufficient for remote code execution on the client system, with full confidentiality, integrity, and availability impact. No user interaction beyond connecting to a malicious server is required, making this exploitable in scenarios where users connect to untrusted or attacker-controlled RDP endpoints (GitHub Advisory, Red Hat Bugzilla).
A proof-of-concept exploit demonstrating the heap buffer overflow via AddressSanitizer output is publicly available in the GitHub Security Advisory (GitHub Advisory). The CVSS v4.0 exploit maturity is rated PROOF_OF_CONCEPT. As of the time of reporting, there is no evidence of active in-the-wild exploitation or threat actor attribution. The EPSS score is approximately 0.088%, indicating low but non-zero probability of exploitation in the near term. The vulnerability is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.
WireToSurface1 PDUs with ClearCodec-encoded data..rdp file, or a man-in-the-middle attack on an existing RDP session.WireToSurface1 PDU containing a ClearCodec-encoded bitmap with a glyph index present (CLEARCODEC_FLAG_GLYPH_INDEX set) and a destRect whose coordinates (left, top, right, bottom) pass ordering validation but extend beyond the allocated surface buffer dimensions.clear_decompress function calls freerdp_image_copy_no_overlap with the unvalidated out-of-bounds coordinates, causing heap memory beyond the surface buffer to be read from or written to.destRect values in WireToSurface1 PDUs.xfreerdp, wfreerdp, sdl-freerdp) crashing unexpectedly or producing AddressSanitizer-style abort messages referencing clear_decompress, freerdp_image_copy_no_overlap, or generic_image_copy_bgrx32_bgrx32.core.*) in the working directory of the FreeRDP client process following an RDP session.Upgrade FreeRDP to version 3.21.0 or later, which contains the fix for this vulnerability (FreeRDP Release). Red Hat has issued patches for RHEL 7, 8, 9, and 10 via errata RHSA-2026:2048, RHSA-2026:2081, RHSA-2026:2222, RHSA-2026:2714, and related advisories (Red Hat Bugzilla). As a workaround prior to patching, restrict FreeRDP client connections to trusted, verified RDP servers only, and avoid connecting to unknown or untrusted RDP endpoints. Fedora, SUSE, Ubuntu, openSUSE, AlmaLinux, Rocky Linux, Amazon Linux 2, Mageia, Debian, and Oracle Linux have also released updated packages.
The vulnerability was reported by researcher ehdgks0627 and acknowledged by the FreeRDP maintainer (akallabeth) in the 3.21.0 release notes, which described it as one of several medium-severity client-side vulnerabilities fixed in the release (FreeRDP Release). Red Hat classified the issue as high severity and issued multiple errata across RHEL versions within weeks of disclosure (Red Hat Bugzilla). Coverage appeared on Linux security news aggregators and German Linux security site pro-linux.de, reflecting broad distribution-level attention but no significant social media controversy.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."