ZeroHour

CVE-2026-91948

moderate

Heap out-of-bounds write in FreeRDP server-side static virtual channels (< 3.31.0)

CVSS 4.0
7.7 high
EPSS
Published
()
Modified
AI analysis

FreeRDP versions before 3.31.0 contain an integer-wrap-driven out-of-bounds write (CWE-191) in the server-side handling of static virtual channels when a channel is registered with CHANNEL_OPTION_SHOW_PROTOCOL. An authenticated remote client triggers the flaw by queuing oversized channel messages, causing a length calculation to underflow and corrupting heap memory, including live pointers, with likely code execution on the RDP server. Any deployment exposing a FreeRDP-based RDP server (Linux RDP servers, gateways, or vendor products embedding the FreeRDP server libraries) is affected, though exploitation requires valid credentials, a vulnerable channel configuration, and high attack complexity (CVSS 4.0: 7.7). No public proof-of-concept or in-the-wild exploitation is known, and the flaw is not on the CISA KEV list.

What to do: Upgrade FreeRDP to 3.31.0 or later, or apply your distribution's patched package, on all systems running FreeRDP-based RDP servers. Audit server configurations for static virtual channels registered with CHANNEL_OPTION_SHOW_PROTOCOL and disable them if not required. Restrict RDP endpoints to VPN or trusted networks and monitor for unusually large or malformed channel traffic from authenticated sessions.

Affected
FreeRDPall versions before 3.31.0
Estimated exposure
moderate≈ several thousand internet-exposed FreeRDP-based RDP servers, plus an unknown larger number of internal/VPN-gated deployments — Public internet scans show millions of hosts with RDP (port 3389) open, but Linux/FreeRDP-based servers are a small minority of those, and the exploitable subset is further narrowed by the CHANNEL_OPTION_SHOW_PROTOCOL configuration…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

FreeRDP versions before 3.31.0 contain an out-of-bounds write vulnerability in server-side static virtual channel handling when CHANNEL_OPTION_SHOW_PROTOCOL is enabled. Authenticated clients can queue oversized channel messages that cause buffer underflow and corrupt heap memory including live pointers, potentially enabling code execution.

Weakness
CWE-191
Vector
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.