ZeroHour

CVE-2026-91961

large

Reachable Assertion DoS in FreeRDP Client via URBDRC USB Redirection Path

CVSS 4.0
7.1 high
EPSS
Published
()
Modified
AI analysis

FreeRDP versions before 3.31.0 contain a denial-of-service flaw (CWE-617, reachable assertion) in the URBDRC USB device redirection channel's control-transfer handling: the OutputBufferSize value is not validated before being passed to the libusb backend. A malicious or compromised RDP server can send a control-transfer request with OutputBufferSize set to 65536, which trips an assertion and immediately terminates the FreeRDP client process. The impact is limited to client availability (crash on connect) — there is no evidence of code execution or information disclosure, consistent with the CVSS 4.0 score of 7.1 with availability-only impact. Any user connecting to an untrusted server with a FreeRDP-based client that has USB redirection enabled is exposed, since the attack requires the client to initiate a connection (user interaction). No public proof-of-concept is known and there is no indication of exploitation in the wild.

What to do: Upgrade FreeRDP to 3.31.0 or later, or apply your distribution's or vendor's patched package if you use a FreeRDP-based client such as Remmina. As a mitigation, do not enable USB redirection (/usb, the URBDRC channel) when connecting to untrusted or unknown RDP servers. Investigate any client crashes occurring immediately upon connection to an unfamiliar server as a possible trigger of this bug.

Affected
FreeRDPbefore 3.31.0 (all versions prior to 3.31.0)
Estimated exposure
large≈1M+ FreeRDP-based client installations overall; vulnerable subset (USB redirection in use) plausibly in the hundreds of thousands — FreeRDP is the RDP engine bundled with major Linux distributions and embedded in widely used third-party clients (e.g., Remmina), giving a large install base, but the vulnerable URBDRC path is only reachable when the user enables USB…

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

Description

FreeRDP before 3.31.0 contains a denial-of-service vulnerability in the URBDRC control-transfer request path that fails to validate OutputBufferSize before forwarding to the libusb backend. A malicious RDP server can send a control-transfer request with OutputBufferSize set to 65536, triggering a reachable assertion that terminates the client process.

Weakness
CWE-617
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/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.