Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAttacker operates or compromises RDP server
-
DeliveryFreeRDP client connects with AsyncUpdate enabled
-
ExploitServer sends crafted RAIL WINDOW_STATE_ORDER or NOTIFY_ICON_STATE_ORDER
-
InstallAsync proxy shallow-copies parser-owned nested pointers
-
C2Parser frees nested heap buffers on callback return
-
ExecuteAsync dispatcher dereferences stale freed pointers
-
ImpactClient crash or memory corruption
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires two specific conditions to be simultaneously present: (1) the FreeRDP client must have the AsyncUpdate option enabled - this activates the asynchronous message proxy code path that performs the unsafe shallow copy, and without it the vulnerable branch is never reached; and (2) the attacker must occupy the RDP server role, either by operating a malicious server or by compromising a legitimate one to which the target client connects. Limiting factors include: the vulnerability is entirely client-side and cannot be triggered by a passive network attacker; the attacker must be in an active server position, not a man-in-the-middle without server control; and the AsyncUpdate configuration must be explicitly active on the client. Unauthenticated clients who connect to attacker-controlled servers with AsyncUpdate disabled are not affected. |
| Impact | The CVSS 4.0 score of 8.7 (AV:N/AC:L/AT:N/PR:N/UI:N/VA:H) reflects a high-severity, network-reachable availability impact with no privileges required. However, the AT:N (no attack requirements) rating warrants scrutiny: the description explicitly conditions exploitation on AsyncUpdate being enabled, which is a deployment-specific option rather than a universal default. If AsyncUpdate is non-default, AT:P would more accurately represent real-world exploitability, and the effective score would decrease. No EPSS data was provided, limiting probability-based triage. No CISA KEV entry exists, and no proof-of-concept has been identified, reinforcing that this is not currently under widespread active exploitation. The memory corruption primitive theoretically extends beyond denial-of-service to arbitrary code execution on the client, but the official CVSS assessment caps impact at VA:H with no confidentiality or integrity impact - a conservative but defensible position absent confirmed exploitation. The primary real-world risk is environments connecting FreeRDP clients to untrusted or shared RDP infrastructure with AsyncUpdate enabled. |
| Exploit ScenarioDerived | An attacker who controls or has compromised an RDP server waits for a FreeRDP client with AsyncUpdate enabled to establish a session. The attacker's server sends a sequence of crafted RAIL WINDOW_STATE_ORDER or NOTIFY_ICON_STATE_ORDER update messages; the client's async proxy shallow-copies the parsed structures, the parser frees the nested heap buffers (titleInfo.string, windowRects, icon data), and when the async dispatcher later processes the queued message it dereferences the now-freed pointers, crashing the client process or triggering exploitable memory corruption. No public proof-of-concept exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 01, 2026
Heap use-after-free in FreeRDP's asynchronous update message proxy (all versions before 3.29.0) enables a malicious or compromised RDP server to crash the connecting client or induce memory corruption by sending crafted RAIL WINDOW_STATE_ORDER and NOTIFY_ICON_STATE_ORDER update packets. The vulnerability surfaces only when the AsyncUpdate option is enabled on the client, limiting but not eliminating real-world exposure given the feature's performance benefits and common usage. Vendor-released patch version 3.29.0 is available; no public exploit code and no CISA KEV listing have been identified at time of analysis.
RemediationAI
Upgrade FreeRDP to version 3.29.0 or later per the vendor security advisory at https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-33gg-h66j-3697, with the upstream fix committed at https://github.com/FreeRDP/FreeRDP/commit/5370fb26fbf034ecd11d3026b6ad639b5fff493f. Where immediate upgrade is not feasible, disable the AsyncUpdate option in FreeRDP client configuration - this removes the code path through the vulnerable async message proxy entirely and eliminates the vulnerability, though it trades asynchronous update batching for synchronous processing, which may increase perceptible latency on high-latency or high-bandwidth RDP sessions. Organizations connecting to untrusted or shared RDP servers should treat disabling AsyncUpdate as a mandatory interim control until patching is complete.
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 (CPE: cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*) is an open-source implementation of Microsoft's Remote Desktop Protocol used widely as a client library on Linux, macOS, and Windows. The flaw exists in the async update message proxy that handles RAIL (Remote Applications Integrated Locally) extension messages - specifically WINDOW_STATE_ORDER and NOTIFY_ICON_STATE_ORDER. When AsyncUpdate is enabled, this proxy performs a shallow copy of structures returned by the protocol parser. Those structures contain nested heap-allocated pointers (e.g., titleInfo.string, windowRects, visibilityRects, icon buffers) that are parser-owned: the parser frees them as soon as its callback returns. The async dispatch queue, now holding the shallow-copied structure, later dereferences those freed pointers when processing the queued message. This is a textbook CWE-416 (Use After Free) pattern: the lifecycle of the nested allocations is not extended to match the lifetime of the queued async message, producing dangling pointers that yield memory corruption or a client crash when dereferenced.
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
Network attack from a malicious RDP server; no privileges or user interaction required; impact is availability-only (client crash); AsyncUpdate dependency noted but treated as deployment context rather than complexity.
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
FreeRDP before 3.29.0 contains client-side heap use-after-free vulnerabilities in the async update message proxy for RAIL WINDOW_STATE_ORDER and NOTIFY_ICON_STATE_ORDER when AsyncUpdate is enabled. When a malicious or compromised RDP server sends crafted update orders, the message proxy shallow-copies structures containing nested parser-owned pointers (e.g., titleInfo.string, windowRects, visibilityRects, icon buffers). The parser frees those nested buffers after the callback returns, so the queued async message later dispatches stale pointers, potentially causing memory corruption or a client crash.
Executive ViewAI
FreeRDP versions before 3.29.0 contain a heap use-after-free vulnerability in the AsyncUpdate feature that allows malicious RDP servers to crash clients or induce memory corruption, affecting organizations using this widely-deployed remote access client. Organizations relying on FreeRDP face potential service disruptions and system stability risks when connecting to compromised infrastructure. A vendor patch is immediately available and should be prioritized for deployment.
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.
Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
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-416 – Use After Free
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-51821
GHSA-hp6g-g26j-5q54
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB