Description
FreeRDP from 2.3.0 before 3.32.0 contains an infinite loop vulnerability in http_chuncked_read that allows malicious RD Gateways to hang clients by sending incomplete chunked responses. Attackers can send a partial chunk-size line or footer followed by a clean TLS shutdown, causing zero-byte reads to loop forever and freeze the client decoder thread.
Published: 2026-10-13
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: Denial of Service (client freeze)
Action: Upgrade to 3.32.0
AI Analysis

Impact

FreeRDP versions 2.3.0 through 3.31.x contain an infinite loop flaw in the http_chunked_read routine that is triggered by malformed chunked responses sent by an RD Gateway. When the gateway sends a partial chunk‑size line or footer and then ends the TLS session, the client repeatedly performs zero‑byte reads and never exits the loop. This results in the client’s decoder thread becoming permanently blocked, effectively denying legitimate use of the remote desktop session. The weakness is identified as unchecked loop iteration, which is CWE‑835.

Affected Systems

The affected product is the FreeRDP open‑source RDP client, specifically releases from version 2.3.0 up to 3.31.x. An attacker can exploit the issue by acting as a malicious RD Gateway that the client relies on to establish a remote desktop connection.

Risk and Exploitability

The vulnerability has a CVSS score of 7.1, indicating a high severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog, suggesting that while the flaw is significant, it may not yet have public exploitation evidence. The likely attack vector is remote; an attacker must be able to position themselves as the RD Gateway that the client connects to. If a FreeRDP client is used in an environment where connections to untrusted RD Gateways are possible, the risk of service interruption is elevated. The absence of an immediate exploit makes the threat moderated but actionable.

Generated by OpenCVE AI on October 13, 2026 at 15:33 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the FreeRDP client to version 3.32.0 or later
  • If upgrade is not possible, avoid connecting to RD Gateways whose responses can be tampered with, or implement user‑level filtering to reject malformed chunked responses
  • Configure the client to enforce strict HTTP chunked response validation and terminate the connection if the sequence of chunked data does not conform to protocol requirements; optionally enable a decoder thread timeout to prevent indefinite loops

Generated by OpenCVE AI on October 13, 2026 at 15:33 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 13 Oct 2026 13:45:00 +0000

Type Values Removed Values Added
Description FreeRDP from 2.3.0 before 3.32.0 contains an infinite loop vulnerability in http_chuncked_read that allows malicious RD Gateways to hang clients by sending incomplete chunked responses. Attackers can send a partial chunk-size line or footer followed by a clean TLS shutdown, causing zero-byte reads to loop forever and freeze the client decoder thread.
Title FreeRDP 2.3.0 before 3.32.0 Infinite Loop via RD Gateway Chunked Response
First Time appeared Freerdp
Freerdp freerdp
Weaknesses CWE-835
CPEs cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*
Vendors & Products Freerdp
Freerdp freerdp
References
Metrics cvssV3_1

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

cvssV4_0

{'score': 7.1, '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'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-13T13:27:10.704Z

Reserved: 2026-10-13T11:24:25.841Z

Link: CVE-2026-109941

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-13T14:17:32.073

Modified: 2026-10-13T14:17:32.073

Link: CVE-2026-109941

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-13T17:15:14Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')