{"id":"CVE-2023-39355","aliases":["CLSA-2026-1775223344","EUVD-2023-43081","GHSA-hvwj-vmg6-2f5h","UBUNTU-CVE-2023-39355"],"status":"published","title":"FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","severity":{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.01266,"percentile":0.69943,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-416"],"published":"2023-08-31T19:45:02Z","modified":"2026-10-28T10:35:01Z","affected":[{"source":"osv","ecosystem":"TuxCare:CentOS:7","package":"freerdp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1-5.el7_9.tuxcare.els19"}]}],"bundled":3},{"source":"osv","ecosystem":"TuxCare:CentOS:7","package":"freerdp-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1-5.el7_9.tuxcare.els19"}]}],"bundled":3},{"source":"osv","ecosystem":"TuxCare:CentOS:7","package":"freerdp-libs","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1-5.el7_9.tuxcare.els19"}]}],"bundled":3},{"source":"osv","ecosystem":"TuxCare:CentOS:7","package":"libwinpr","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1-5.el7_9.tuxcare.els19"}]}],"bundled":3},{"source":"osv","ecosystem":"TuxCare:CentOS:7","package":"libwinpr-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1-5.el7_9.tuxcare.els19"}]}],"bundled":3}],"products":[{"vendor":"debian","product":"debian_linux"},{"vendor":"freerdp","product":"freerdp"}],"references":[{"url":"https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-hvwj-vmg6-2f5h","tags":["x_refsource_CONFIRM","x_transferred","Exploit","Vendor Advisory","advisory","report"]},{"url":"https://github.com/FreeRDP/FreeRDP/commit/d6f9d33a7db0b346195b6a15b5b99944ba41beee","tags":["x_refsource_MISC","x_transferred","Patch","fix","report"]},{"url":"https://lists.debian.org/debian-lts-announce/2023/10/msg00008.html","tags":["x_transferred","Mailing List","Third Party Advisory","web"]},{"url":"https://security.gentoo.org/glsa/202401-16","tags":["x_transferred","advisory"]},{"url":"https://errata.tuxcare.com/els_os/centos7els/CLSA-2026-1775223344.html","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/39xxx/CVE-2023-39355.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-39355","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2023-39355","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-39355","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2023-39355","title":"FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","status":"published","published":"2023-08-31T19:45:02.298Z","modified":"2025-02-13T17:02:55.875Z","cvss":[{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-416"],"updated_at":"2026-11-02T14:35:33.138994Z"}],"euvd":[{"id":"EUVD-2023-43081","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","status":"published","published":"2023-08-31T19:45:02Z","modified":"2025-02-13T17:02:55Z","cvss":[{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high"}],"updated_at":"2026-11-03T00:03:49.604577Z"}],"nvd":[{"id":"CVE-2023-39355","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","status":"published","published":"2023-08-31T20:15:08.457Z","modified":"2026-06-17T06:12:07.787Z","cvss":[{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"}],"cwes":["CWE-416"],"updated_at":"2026-11-02T14:08:27.181588Z"}],"osv":[{"id":"CVE-2023-39355","title":"FreeRDP Use-After-Free in RDPGFX_CMDID_RESETGRAPHICS","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","status":"published","published":"2023-08-31T19:45:02.298Z","modified":"2026-10-28T10:35:01.896170899Z","cvss":[{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high"}],"cwes":["CWE-416"],"updated_at":"2026-11-02T15:44:32.922049Z"},{"id":"UBUNTU-CVE-2023-39355","description":"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-\u003emaxPlaneSize` is 0, `context-\u003eplanesBuffer` will be freed. However, without updating `context-\u003eplanesBuffer`, 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.","status":"withdrawn","published":"2023-08-31T20:15:00Z","modified":"2025-07-16T08:16:57.368699Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"},{"version":"3.1","score":7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H","level":"high"}],"updated_at":"2026-11-02T16:54:21.882004Z"},{"id":"CLSA-2026-1775223344","title":"freerdp: Fix of 3 CVEs","description":"- CVE-2023-39355: fix use-after-free in RDPGFX_CMDID_RESETGRAPHICS handling when\n  context-\u003emaxPlaneSize == 0; update context-\u003eplanesBuffer after free and\n  prevent access to freed memory\n- CVE-2026-26965: fix heap out-of-bounds write in RLE planar decode that permit\n  attacker-controlled pixel data and offset overwrite adjacent function pointer;\n  validate (nYDst+nSrcHeight) and (nXDst+nSrcWidth) against destination bounds\n  and ensure writes use correct buffer, prevent OOB write\n- CVE-2026-26955: fix heap buffer overflow in GDI surface pipeline caused by\n  out-of-bounds ClearCodec destination rectangle; add top-level guard in\n  clear_decompress() to validate nXDst/nYDst against destination surface\n  dimensions protecting all code paths (bands, residual, glyph, subcodec);\n  fix subcodec bounds checks to compare against destination dimensions","status":"published","published":"2026-04-10T16:18:55Z","modified":"2026-10-21T10:48:04.775558577Z","updated_at":"2026-11-02T15:43:44.009773Z"}]}}
