CVE-2023-39355
FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.0
FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2023-39355- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H - Weakness
- CWE-416
- Updated
- 2026-11-02
EUVDEUVD-2023-43081
7.0
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
EUVD-2023-43081- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H - Updated
- 2026-11-03
NVD
7.0
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2023-39355- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-416
- Updated
- 2026-11-02
OSV
7.0
FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2023-39355- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H - Weakness
- CWE-416
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2023-39355
9.8
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Versions of FreeRDP on the 3.x release branch before beta3 are subject to a Use-After-Free in processing RDPGFX_CMDID_RESETGRAPHICS packets. If context->maxPlaneSize is 0, context->planesBuffer will be freed. However, without updating context->planesBuffer, this leads to a Use-After-Free exploit vector. In most environments this should only result in a crash. This issue has been addressed in version 3.0.0-beta3 and users of the beta 3.x releases are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
UBUNTU-CVE-2023-39355- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 3.1
- 7.0 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H - Updated
- 2026-11-02
OSVCLSA-2026-1775223344 No score
freerdp: Fix of 3 CVEs
- CVE-2023-39355: fix use-after-free in RDPGFX_CMDID_RESETGRAPHICS handling when context->maxPlaneSize == 0; update context->planesBuffer after free and prevent access to freed memory
- CVE-2026-26965: fix heap out-of-bounds write in RLE planar decode that permit attacker-controlled pixel data and offset overwrite adjacent function pointer; validate (nYDst+nSrcHeight) and (nXDst+nSrcWidth) against destination bounds and ensure writes use correct buffer, prevent OOB write
- CVE-2026-26955: fix heap buffer overflow in GDI surface pipeline caused by out-of-bounds ClearCodec destination rectangle; add top-level guard in clear_decompress() to validate nXDst/nYDst against destination surface dimensions protecting all code paths (bands, residual, glyph, subcodec); fix subcodec bounds checks to compare against destination dimensions
- Record
CLSA-2026-1775223344- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
freerdpTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els19 | 2.1.1-5.el7_9.tuxcare.els19 |
freerdp-develTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els19 | 2.1.1-5.el7_9.tuxcare.els19 |
freerdp-libsTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els19 | 2.1.1-5.el7_9.tuxcare.els19 |
libwinprTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els19 | 2.1.1-5.el7_9.tuxcare.els19 |
libwinpr-develTuxCare:CentOS:7 From an advisory covering 3 CVEs |
before 2.1.1-5.el7_9.tuxcare.els19 | 2.1.1-5.el7_9.tuxcare.els19 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected | ||
| aliases, published | EUVD | |
| first indexed | CVE List, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-39355 is a high vulnerability (CVSS 7.0) in Freerdp, published August 31, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.27%, the 69th percentile. No source names a fixed version.
References
github.com/FreeRDP/FreeRDP/security/advisories/GHSA-hvwj-vmg6-2f5h
github.com/FreeRDP/FreeRDP/commit/d6f9d33a7db0b346195b6a15b5b99944ba41beee
lists.debian.org/debian-lts-announce/2023/10/msg00008.html
security.gentoo.org/glsa/202401-16
errata.tuxcare.com/els_os/centos7els/CLSA-2026-1775223344.html
github.com/CVEProject/cvelistV5/tree/main/cves/2023/39xxx/CVE-2023-39355.json
nvd.nist.gov/vuln/detail/CVE-2023-39355
ubuntu.com/security/CVE-2023-39355
cve.org/CVERecord?id=CVE-2023-39355