Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure victim client to malicious RDP server
-
DeliverySend WBT_TILE_FIRST for progressive tile
-
ExploitSend WBT_TILE_UPGRADE on un-decoded tile
-
ExecutionClient reads uninitialized tile->current heap buffer
-
ImpactHeap bytes painted onscreen or client aborts
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Variable initialization
|
| Exploitation Conditions | Exploitation requires the victim to initiate an RDP connection to an attacker-controlled or man-in-the-middle RDP server (UI:P in the 4.0 vector - the client is the target, not a listening service), and the session must negotiate the RemoteFX/progressive codec so the server can emit the malicious WBT_TILE_FIRST followed by WBT_TILE_UPGRADE sequence against an un-decoded tile. The core prerequisite is the progressive codec code path being reached with a tile->current buffer allocated but not zeroed. Limiting factors: the attacker must control the server side and induce the user to connect (no unauthenticated push against an exposed client port), the affected version must be FreeRDP before 3.0.0 or in the 3.6.0-before-3.32.0 range, and the confidentiality leak is opportunistic (whatever heap happens to be rendered) rather than a targeted read of attacker-chosen memory. |
| Impact | This is a client-side, server-triggered vulnerability: the CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H) scores 7.1 (High), driven almost entirely by the availability impact (VA:H - the client can be aborted) with only low confidentiality impact (VC:L - uninitialized heap bytes are painted onscreen rather than exfiltrated to the attacker in a structured way). PR:N and AV:N look alarming in isolation, but UI:P is the decisive mitigating signal: exploitation is not a push attack against a listening service - the victim must initiate an RDP session to an attacker-controlled or compromised server. No EPSS score, CISA KEV listing, or public POC is present in the provided intelligence, so there is currently no evidence of active exploitation or available exploit code (no public exploit identified at time of analysis). The practical risk is therefore moderate and conditional: it matters most where users connect to untrusted or man-in-the-middle-able RDP endpoints, and far less for clients that only reach trusted internal servers. Note the information-disclosure value is weak - CWE-908 uninitialized heap rendered to the display is a low-bandwidth, unreliable leak, whereas the crash (denial of service) is the more dependable outcome; the 'Information Disclosure' tag slightly overstates the confidentiality primitive relative to the DoS. No conflicts exist between the CVSS vector and the description - both agree this is a network-reachable, low-complexity, no-privilege, user-interaction-dependent client flaw. |
| Exploit ScenarioDerived | An attacker stands up a malicious RDP server (or MITMs a connection) and waits for or lures a victim to connect using a vulnerable FreeRDP-based client with the progressive codec enabled. During the graphics stream the server sends a crafted WBT_TILE_FIRST followed by a WBT_TILE_UPGRADE sequence referencing an un-decoded tile, causing the client to render the uninitialized tile->current heap buffer onscreen or crash the client. No public exploit code is identified at time of analysis, so this reflects the described mechanism rather than a weaponized tool. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
FreeRDP clients before 3.0.0 and in the 3.6.0-before-3.32.0 range can be coerced by a malicious RDP server into painting uninitialized heap memory onscreen or into aborting the client process via crafted WBT_TILE_FIRST and WBT_TILE_UPGRADE progressive codec messages. This client-side uninitialized heap read (CWE-908) occurs because the tile->current buffer is allocated without zeroing, and exploitation requires the victim to connect to an attacker-controlled or man-in-the-middle RDP server while the session negotiates the RemoteFX/progressive codec. No public exploit identified at time of analysis, and confirmed active exploitation has not been reported; the CVSS 4.0 score is 7.1 (High), driven primarily by availability impact (client abort) with a low, opportunistic confidentiality impact.
RemediationAI
Vendor-released patch: FreeRDP 3.0.0 (for the pre-3.0.0 branch) and 3.32.0 (for the 3.6.0 branch), as indicated by the CVE description's affected ranges. Upgrade to version 3.0.0 or later if running a pre-3.0.0 version, or to version 3.32.0 or later if running a version in the 3.6.0-to-3.32.0 range; consult the vendor advisory GHSA-4mpr-hmqx-83q8 (https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-4mpr-hmqx-83q8) for the authoritative patch information. As a compensating control, connect only to trusted RDP servers and avoid initiating connections to untrusted or unknown endpoints, since exploitation requires the victim to connect to a malicious or man-in-the-middle RDP server and the session to negotiate the progressive codec. If configurable, disabling RemoteFX/progressive codec support in FreeRDP would prevent the vulnerable code path from being reached, but this may reduce display performance or break compatibility with servers that require that codec. Network-level controls such as restricting outbound RDP (TCP 3389) to known-good hosts or requiring RDP connections to traverse a VPN can limit exposure to attacker-controlled servers. These workarounds trade off functionality and do not fully eliminate the risk if the client must connect to diverse RDP endpoints.
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
The vulnerability is a use of uninitialized resource (CWE-908) in FreeRDP's progressive codec (RemoteFX) tile handling. When a tile is received but not decoded, the tile->current buffer is allocated but not zeroed; a malicious server can then send a WBT_TILE_FIRST message followed by a WBT_TILE_UPGRADE for that undecoded tile, causing the client to render whatever heap contents occupy that buffer. The CPE cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:* uses a wildcard version and does not distinguish the specific vulnerable ranges, so it should be cross-referenced with the vendor advisory for exact affected versions. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N) reflects a network-based attack with no privileges required on the server side, but user interaction is required because the client must initiate the RDP connection; the primary impact is availability (VA:H - the client process can be aborted) with a low confidentiality impact (VC:L - heap bytes are displayed onscreen rather than being exfiltrated to the attacker in a structured, attacker-chosen manner).
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:P/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
Malicious server attacks a connecting client so AV:N/PR:N but UI:R (victim must connect); low-bandwidth heap leak gives C:L, I:N, and client abort gives A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
FreeRDP before 3.0.0 and 3.6.0 before 3.32.0 renders uninitialized heap memory from un-decoded progressive tiles because the tile->current buffer is allocated without zeroing. A malicious RDP server can send a crafted WBT_TILE_FIRST then WBT_TILE_UPGRADE sequence to paint heap bytes onscreen or abort the client process.
Executive ViewAI
FreeRDP, the open-source RDP client embedded in many remote-access and VDI workflows, can be forced by a malicious or man-in-the-middle RDP server to crash or to display uninitialized heap memory during codec negotiation. Impact falls on end users who initiate sessions to attacker-controlled or untrusted RDP hosts, making exposure highest for third-party, contractor, and unmanaged-endpoint access scenarios. With no vendor-released patch identified at time of analysis and no public exploit identified at time of analysis, this is a manageable but unresolved client-side risk that warrants exposure reduction while remediation is pursued.
No vendor-released patch identified at time of analysis. Interim mitigations: block direct outbound RDP to untrusted networks and route sessions through controlled brokers or gateways with server allow-listing; disable or restrict the RemoteFX/progressive codec in client policy where possible; instruct users not to connect to unmanaged or third-party RDP servers; restrict and monitor TCP 3389 egress; enable client crash and endpoint telemetry to detect exploitation attempts; and prioritize migration to FreeRDP 3.0.0 or 3.32.0-or-later, which fall outside the affected version ranges.
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
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
EUVD-2026-97686
GHSA-wx7m-cfxv-x2x7
NVD
CVE.org
EPSS
Exploit-DB