CVE-2026-44421: FreeRDP RDPGFX CacheToSurface heap-buffer-overflow via clamped-rectangle validation bypass
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.26.0, a malicious RDP server can trigger a heap-buffer-overflow write in the FreeRDP client by sending crafted RDPGFX PDUs. The bug is in gdi_CacheToSurface: it validates a destination rectangle that is clamped to UINT16_MAX, but then performs the copy using the original cacheEntry->width/height. This can cause a large out-of-bounds heap write and may lead to client crashes or code execution. This bug is reachable from a malicious RDP server, but only when the client has RDPGFX enabled. This vulnerability is fixed in 3.26.0.
Security readout for executives and security teams
Plain-English summary
A malicious RDP server can corrupt memory in vulnerable FreeRDP clients when RDP graphics acceleration is enabled. A user must connect to the server, after which crafted graphics data could crash the client or potentially execute code with the user’s privileges. FreeRDP 3.26.0 fixes the flaw.
Executive priority
Treat this as a high-priority client update, especially for administrators, support staff, or users connecting to third-party RDP servers. The potential impact includes code execution, but exploitation requires a connection to a malicious server and RDPGFX exposure. Accelerate patching without representing the issue as actively exploited.
Technical view
Before FreeRDP 3.26.0, gdi_CacheToSurface validates a destination rectangle after clamping it to UINT16_MAX, but copies using the original cache-entry dimensions. Crafted RDPGFX PDUs can therefore cause a large heap-buffer-overflow write. The issue is remotely reachable from a malicious RDP server when RDPGFX is enabled.
Likely exposure
Exposure requires a FreeRDP client earlier than 3.26.0, enabled RDPGFX functionality, and a connection to a malicious or compromised RDP server. Systems using 3.26.0 or later are outside the stated affected range. The bundle does not identify specific downstream package versions beyond the linked Red Hat materials.
Exploitation context
The CVSS 3.1 score is 8.8, reflecting low-complexity network delivery, no server-side privileges, required user interaction, and potentially severe confidentiality, integrity, and availability impact. The source bundle marks this CVE as absent from KEV and provides no evidence of active exploitation or public weaponization.
Researcher notes
The security boundary failure is a validation-versus-use mismatch: bounds checks use clamped 16-bit rectangle dimensions while the subsequent copy uses original cache-entry width and height. Review embedded or statically linked FreeRDP copies, not only system packages. No exploit reliability, affected downstream version mapping, or active exploitation evidence is established by the supplied sources.
Mitigation direction
Upgrade FreeRDP clients to version 3.26.0 or later.
Prioritize clients permitted to connect to untrusted or externally controlled RDP servers.
Until upgraded, avoid connections to untrusted RDP servers and assess whether RDPGFX can be disabled safely.
Check applicable operating-system vendor advisories for packaged updates and deployment guidance.
Validation and detection
Inventory installed FreeRDP client and library versions across endpoints.
Confirm deployed versions are 3.26.0 or later, including bundled application copies.
Identify vulnerable clients with RDPGFX enabled and document their permitted RDP destinations.
Verify operating-system security updates corresponding to applicable vendor advisories are installed.
Retest application compatibility after upgrading or changing RDPGFX configuration.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-122: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
5Timeline events
2ADP providers
7Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: noTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-122 · source CWE mapping
Heap-based Buffer Overflow
Heap-based Buffer Overflow represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Out-of-bounds Write represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.