Description
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.27.0, FreeRDP clients that negotiate RDPGFX AVC444 with an H.264 decoder backend calculate the intermediate YUV444 allocation size in libfreerdp/codec/h264.c with 32-bit multiplication in avc444_ensure_buffer. A malicious RDP server can supply surface dimensions for which piDstStride multiplied by padDstHeight wraps to a small nonzero value, causing winpr_aligned_recalloc to allocate an undersized buffer before YUV420CombineToYUV444 writes using the actual stride and rectangle dimensions. This can cause a client crash and may permit code execution through attacker-influenced heap corruption. This issue is fixed in version 3.27.0.
Published: 2026-08-19
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

FreeRDP clients that negotiate the RDPGFX AVC444 format with an H.264 backend compute an intermediate YUV444 buffer size using 32‑bit multiplication in avc444_ensure_buffer. If an attacker‑controlled RDP server supplies surface dimensions that cause the stride multiplied by the height to wrap to a small nonzero value, the calculated buffer size becomes undersized. The subsequent YUV420CombineToYUV444 write then overflows the heap, which can crash the client and potentially corrupt heap memory to enable arbitrary code execution.

Affected Systems

All FreeRDP clients before version 3.27.0 that support RDPGFX AVC444 with an H.264 decoder are affected. The vulnerability is mitigated in the 3.27.0 release, which adjusts the buffer size calculations to use safe arithmetic.

Risk and Exploitability

The flaw carries a CVSS score of 8.7 and is not listed in the CISA KEV catalog. The EPSS score is < 1%, indicating a very low exploitation probability, but exploitation requires only the ability to act as an RDP server and to send crafted surface dimensions, making it a remotely exploitable issue that could lead to code execution if heap corruption is achieved.

Generated by OpenCVE AI on August 25, 2026 at 14:09 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade FreeRDP to version 3.27.0 or later, which corrects the buffer size calculation.
  • If an upgrade cannot be performed immediately, disable the RDPGFX AVC444 feature or the H.264 backend to prevent the vulnerable code path from being executed.
  • Validate or restrict surface dimensions supplied by remote servers, or implement server-side checks to ensure dimensions are within expected bounds.

Generated by OpenCVE AI on August 25, 2026 at 14:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8561-1 FreeRDP vulnerabilities
History

Tue, 25 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-787
References
Metrics threat_severity

None

cvssV3_1

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

threat_severity

Important


Wed, 19 Aug 2026 20:00:00 +0000

Type Values Removed Values Added
First Time appeared Freerdp
Freerdp freerdp
Vendors & Products Freerdp
Freerdp freerdp

Wed, 19 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Wed, 19 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Description FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.27.0, FreeRDP clients that negotiate RDPGFX AVC444 with an H.264 decoder backend calculate the intermediate YUV444 allocation size in libfreerdp/codec/h264.c with 32-bit multiplication in avc444_ensure_buffer. A malicious RDP server can supply surface dimensions for which piDstStride multiplied by padDstHeight wraps to a small nonzero value, causing winpr_aligned_recalloc to allocate an undersized buffer before YUV420CombineToYUV444 writes using the actual stride and rectangle dimensions. This can cause a client crash and may permit code execution through attacker-influenced heap corruption. This issue is fixed in version 3.27.0.
Title FreeRDP: Heap-buffer-overflow write in AVC444 YUV buffer allocation
Weaknesses CWE-122
CWE-190
References
Metrics cvssV4_0

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


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-19T18:17:07.147Z

Reserved: 2026-06-16T15:20:43.086Z

Link: CVE-2026-55191

cve-icon Vulnrichment

Updated: 2026-08-19T18:16:09.730Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-08-19T18:16:44.427

Modified: 2026-09-09T21:19:49.197

Link: CVE-2026-55191

cve-icon Redhat

Severity : Important

Publid Date: 2026-08-19T17:44:52Z

Links: CVE-2026-55191 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T14:15:05Z

Weaknesses