Cyber Posture

CVE-2026-25955

CriticalPublic PoC

Published: 25 February 2026

Published
25 February 2026
Modified
27 February 2026
KEV Added
Patch
CVSS Score 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.0010 28.0th percentile
Risk Priority 20 60% EPSS · 20% KEV · 20% CVSS

Description

FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, `xf_AppUpdateWindowFromSurface` reuses a cached `XImage` whose `data` pointer references a freed RDPGFX surface buffer, because `gdi_DeleteSurface` frees `surface->data` without invalidating the `appWindow->image` that aliases it. Version…

more

3.23.0 fixes the issue.

Mitigating Controls (NIST 800-53 r5)AI

prevent

Directly mitigates CVE-2026-25955 by requiring timely application of the FreeRDP 3.23.0 patch that corrects the use-after-free in surface buffer management.

prevent

Provides memory protection techniques like ASLR and DEP that hinder exploitation of the dangling pointer in the freed RDPGFX surface buffer.

detect

Enables identification of vulnerable FreeRDP versions prior to 3.23.0 through vulnerability scanning, prompting remediation of the use-after-free flaw.

Security SummaryAI

CVE-2026-25955 is a use-after-free vulnerability (CWE-416) in FreeRDP, a free implementation of the Remote Desktop Protocol. It affects versions prior to 3.23.0, specifically in the X11 client component's `xf_AppUpdateWindowFromSurface` function. The flaw arises because `gdi_DeleteSurface` frees `surface->data` without invalidating the cached `appWindow->image` XImage structure that aliases it, allowing the freed RDPGFX surface buffer to be reused via the dangling pointer.

The vulnerability carries a CVSS v3.1 base score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H), indicating exploitation over the network with low complexity, no privileges or user interaction required. A remote unauthenticated attacker could exploit it by serving malicious RDP traffic to a victim running a vulnerable FreeRDP client, triggering the use-after-free during surface updates and potentially achieving high-impact confidentiality, integrity, and availability violations such as arbitrary code execution or system crashes on the client machine.

FreeRDP version 3.23.0 resolves the issue, as implemented in commit 169d358734509e82663a0d6a0085ae726d439d8e. The fix addresses the memory invalidation in `gdi_DeleteSurface` and related logic in `xf_window.c` (lines 1484-1492, 1494-1500, 1528) and `gfx.c` (lines 1224-1227). Practitioners should prioritize updating to 3.23.0 or later to mitigate exposure.

Details

CWE(s)

Affected Products

freerdp
freerdp
≤ 3.23.0

MITRE ATT&CK Enterprise TechniquesAI

T1203 Exploitation for Client Execution Execution
Adversaries may exploit software vulnerabilities in client applications to execute code.
Why these techniques?

Use-after-free vulnerability in FreeRDP RDP client enables remote unauthenticated arbitrary code execution via malicious RDP traffic with no user interaction, directly facilitating T1203: Exploitation for Client Execution.

Confidence: HIGH · MITRE ATT&CK Enterprise v19.0

References