CVE-2026-67303

FreeRDP before 3.29.0 Denial of Service via serial DeviceControl

Published Aug 1, 2026 CVSS 4.0 · 5.3 Medium EPSS < 1% KEV · Not listed
Description
FreeRDP before 3.29.0 contains a reachable assertion (WINPR_ASSERT(OutputBufferLength == BytesReturned)) in serial_process_irp_device_control() in channels/serial/client/serial_main.c. When serial device redirection is enabled and a server-controlled IRP_MJ_DEVICE_CONTROL request specifies an unsupported IOCTL with a non-zero OutputBufferLength, CommDeviceIoControl() can fail with BytesReturned = 0, causing the mismatch to trigger the assertion and abort the client process (denial of service).

Analysis

AI-generated

Technical impact

FreeRDP versions before 3.29.0 contain a reachable assertion in the serial device handling code that triggers when a server sends an unsupported IOCTL request with an incorrect output buffer length. The assertion compares the expected output length to the actual return value; a mismatch causes the client to abort and terminate, resulting in a denial of service. The weakness is a flawed assumption shown by CWE-617, leading to client crash when invalid data is processed.

Affected Systems

The affected product is FreeRDP, a remote desktop protocol client. All releases prior to 3.29.0 are vulnerable when serial device redirection is enabled. No other vendors or product versions are listed.

Risk and Exploitability

The CVSS score of 5.3 indicates moderate severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog, indicating no public exploit is known. The likely attack vector is from a remote RDP server that can send a crafted device control request to a FreeRDP client with serial redirection enabled; this inference is based on the description of the trigger conditions.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to FreeRDP 3.29.0 or later, which removes the faulty assertion
  • If an upgrade is not possible, disable serial device redirection on the client or server to prevent the triggering request from being processed
  • Employ monitoring for abrupt client terminations and apply vendor patches or code changes as available

Generated by OpenCVE AI on August 2, 2026 at 02:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description FreeRDP before 3.29.0 contains a reachable assertion (WINPR_ASSERT(OutputBufferLength == BytesReturned)) in serial_process_irp_device_control() in channels/serial/client/serial_main.c. When serial device redirection is enabled and a server-controlled IRP_MJ_DEVICE_CONTROL request specifies an unsupported IOCTL with a non-zero OutputBufferLength, CommDeviceIoControl() can fail with BytesReturned = 0, causing the mismatch to trigger the assertion and abort the client process (denial of service).
Title FreeRDP before 3.29.0 Denial of Service via serial DeviceControl
First Time appeared Freerdp
Freerdp freerdp
Weaknesses CWE-617
CPEs cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*
Vendors & Products Freerdp
Freerdp freerdp
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L'}

cvssV4_0

{'score': 5.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Aug 3, 2026, 7:45 PM
Reserved
Jul 29, 2026, 1:04 PM
Status
Analyzed
Published
Aug 1, 2026, 1:16 PM
Modified
Sep 29, 2026, 4:17 PM
Severity
Moderate
Public date
Aug 1, 2026, 12:22 PM