Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker operates malicious RDP server
-
DeliveryVictim initiates FreeRDP connection to server
-
ExploitServer sends crafted GLYPH_FRAGMENT_ADD PDU with oversized declared fragment size
-
ExecutionClient reads beyond heap buffer in glyph_cache_fragment_put()
-
ImpactFreeRDP client process crashes (DoS) and may expose heap memory
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The victim must initiate an RDP client session using FreeRDP <= 3.28.0 to a server controlled or influenced by the attacker. No special client-side configuration is required - the vulnerable code path in the glyph cache is reached through the standard RDP drawing order protocol, which is a default part of RDP sessions. The critical prerequisite is attacker control over the server side of the RDP connection: this can be achieved via a rogue RDP server the victim is socially engineered to connect to, a compromised legitimate RDP server, or a man-in-the-middle position on the network (the latter requires additional attack capability and is a separate prerequisite). Exploitation is limited to the client process only (Scope:Unchanged); it does not affect the server or other systems. The CVSS vector PR:N reflects that no client-side authentication or privilege is required from the attacker - they operate the server, not the client. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N, score 8.7) conveys that this vulnerability is remotely exploitable with no complexity, no required privileges, and no user interaction beyond the user connecting to an RDP server - which is the product's intended use. The CVSS 4.0 UI:N metric warrants scrutiny: connecting to a malicious server does require a user to initiate a session, which some assessors would classify as UI:P in CVSS 4.0 terms; this is a minor interpretive difference and does not substantially alter risk. The primary impact is VA:H (full client crash), with no confidentiality or integrity impact per the CVSS vector - however, the 'Information Disclosure' tag from intelligence sources suggests heap memory contents may also be exposed during the OOB read, a nuance the base CVSS vector does not capture. EPSS data was not provided in the intelligence feed. No CISA KEV listing exists, and no public proof-of-concept has been identified, meaning exploitation requires crafting a malicious RDP server or performing a man-in-the-middle attack. Real-world risk is high for organizations permitting users to connect to external or untrusted RDP servers, but significantly mitigated in environments where users only connect to known, trusted, internal RDP infrastructure. |
| Exploit ScenarioDerived | An attacker operates a rogue RDP server (or performs a man-in-the-middle attack against an unencrypted or certificate-ignored RDP session) and waits for a FreeRDP client running version <= 3.28.0 to connect. Once the RDP session is established, the attacker sends a crafted GLYPH_FRAGMENT_ADD drawing order PDU in which the declared fragment size byte is set to a value far exceeding the actual bytes in the packet; the FreeRDP client reads beyond the heap-allocated buffer, causing a process crash and potentially leaking adjacent heap memory contents to the attacker via RDP error reporting or side-channel. No public proof-of-concept exploit code has been identified at time of analysis, but the exploitation mechanic is straightforward for any attacker capable of operating or impersonating an RDP server. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 01, 2026
Heap out-of-bounds read in FreeRDP's glyph cache subsystem (versions <= 3.28.0) allows a malicious or compromised RDP server to crash any connecting FreeRDP client by sending a GLYPH_FRAGMENT_ADD update with a server-controlled declared fragment size that exceeds the actual received buffer. The vulnerability exists because update_process_glyph_fragments() and glyph_cache_fragment_put() in libfreerdp/cache/glyph.c read a one-byte declared size and proceed to allocate and copy that many bytes without first validating that the declared size fits within the remaining data in the received packet. No public exploit or CISA KEV listing has been identified at time of analysis, but the CVSS 4.0 score of 8.7 with AV:N/AC:L/PR:N reflects trivial remote exploitation requiring only a client connection to a rogue server.
RemediationAI
The primary remediation is to upgrade FreeRDP to version 3.29.0 or later, which includes the fix introduced in commit f3b4347105114fe7453828736bea069999af319f (https://github.com/FreeRDP/FreeRDP/commit/f3b4347105114fe7453828736bea069999af319f). The full vendor security advisory is available at https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-hgj8-g595-wfc6 and the VulnCheck advisory at https://www.vulncheck.com/advisories/freerdp-before-heap-out-of-bounds-read-via-glyph-fragment-add. Where immediate patching is not possible, the most effective compensating control is to restrict FreeRDP clients to connecting only to trusted, internally controlled RDP servers via network policy (firewall rules or VPN-gated access), which removes attacker ability to serve malicious RDP PDUs. Disabling glyph caching at the client configuration level (if exposed via xfreerdp flags such as disabling RemoteFX or glyph cache negotiation) may serve as a workaround but requires testing for rendering regressions. Organizations should also audit any environments where users connect to external or third-party RDP servers, as those represent the primary exposure surface.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
FreeRDP is a widely-used open-source implementation of the Remote Desktop Protocol (RDP) client, affected across all versions before 3.29.0 per CPE cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*. The flaw resides in the RDP glyph drawing order subsystem (libfreerdp/cache/glyph.c), specifically in how GLYPH_FRAGMENT_ADD cache update PDUs are parsed. RDP uses a glyph cache mechanism to transmit font/text rendering data efficiently; the GLYPH_FRAGMENT_ADD command embeds a one-byte field for the declared fragment data size. CWE-125 (Out-of-bounds Read) applies because the code trusts this server-supplied byte to drive both memory allocation and a subsequent copy operation, never verifying that the declared length is bounded by the actual bytes remaining in the received RDP PDU. This class of bug enables an attacker with control over the RDP server-side stream to force the client to read heap memory beyond the allocated buffer, resulting in process crash and potentially exposing adjacent heap contents (consistent with the 'Information Disclosure' tag from intelligence sources).
Know when Freerdp gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
User must actively connect to a malicious server (UI:R); OOB read may expose heap memory (C:L); client process crash yields A:H; no privileges required on the client system (PR:N).
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:H
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
FreeRDP before 3.29.0 (affected versions <= 3.28.0) contains a heap out-of-bounds read in update_process_glyph_fragments()/glyph_cache_fragment_put() in libfreerdp/cache/glyph.c. When handling a GLYPH_FRAGMENT_ADD update, the code reads a one-byte server-controlled declared fragment size but does not verify it fits within the remaining received buffer before allocating and copying that many bytes. A malicious RDP server can send a short fragment with an oversized declared size, causing the client to read beyond the allocated buffer, resulting in an out-of-bounds read and client crash.
Executive ViewAI
FreeRDP clients version 3.28.0 and earlier crash when connecting to a malicious or compromised RDP server, disrupting remote access and business operations. While no public exploit has been identified at time of analysis, the vulnerability is trivially exploitable-requiring only an unauthenticated connection to a compromised server-making it a significant risk for organizations relying on remote desktop functionality. Immediate patching is essential to restore service stability.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Use-after-free in FreeRDP xf_clipboard_format_equal before 3.23.0. Clipboard format comparison uses freed memory. Fifth
Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Surface-to-window update triggers memory corrupti
Use-after-free in FreeRDP xf_SetWindowMinMaxInfo before version 3.23.0. X11 client window management triggers memory cor
Use-after-free in FreeRDP xf_cliprdr_provide_data clipboard handling before 3.23.0. Clipboard data exchange triggers mem
FreeRDP IRP thread handler has a use-after-free where the IRP is freed by Complete() then accessed on the error path. Fi
FreeRDP drive read heap overflow when server-controlled read length exceeds IRP output buffer. Fixed in 3.20.1. PoC avai
FreeRDP client before 3.20.1 has a heap buffer overflow in AUDIN format processing. A malicious RDP server can corrupt m
Use-after-free in FreeRDP xf_AppUpdateWindowFromSurface before 3.23.0. Different code path from CVE-2026-25953. PoC and
FreeRDP is a free implementation of the Remote Desktop Protocol. Rated critical severity (CVSS 9.8), this vulnerability
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Rated critical
Same weakness CWE-125 – Out-of-bounds Read
View allSame technique Buffer Overflow
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Enterprise Workstation Extension 15 SP7 | Affected |
| SUSE Linux Enterprise Workstation Extension 15 SP7 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS Extended Security | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Desktop 12 SP2 | Affected |
| SUSE Linux Enterprise Desktop 12 SP3 | Affected |
| SUSE Linux Enterprise Desktop 12 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Affected |
| SUSE Linux Enterprise Server 12 SP2 | Affected |
| SUSE Linux Enterprise Server 12 SP3 | Affected |
| SUSE Linux Enterprise Server 12 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP2 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP3 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP4 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP5 | Affected |
| SUSE Linux Enterprise Workstation Extension 12 SP2 | Affected |
| SUSE Linux Enterprise Workstation Extension 12 SP3 | Affected |
| SUSE Linux Enterprise Workstation Extension 12 SP4 | Affected |
| SUSE Linux Enterprise Workstation Extension 12 SP5 | Affected |
| SUSE Linux Enterprise Workstation Extension 15 SP4 | Affected |
| SUSE Linux Enterprise Workstation Extension 15 SP5 | Affected |
| SUSE Linux Enterprise Workstation Extension 15 SP6 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-51823
GHSA-qx25-fqx8-cgm7
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB