Home

Description

FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, `xf_cliprdr_provide_data_` passes freed `pDstData` to `XChangeProperty` because the cliprdr channel thread calls `xf_cliprdr_server_format_data_response` which converts and uses the clipboard data without holding any lock, while the X11 event thread concurrently calls `xf_cliprdr_clear_cached_data` → `HashTable_Clear` which frees the same data via `xf_cached_data_free`, triggering a heap use after free. Version 3.23.0 fixes the issue.

PUBLISHED Reserved 2026-02-09 | Published 2026-02-25 | Updated 2026-02-26 | Assigner GitHub_M




MEDIUM: 5.5CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P

Problem types

CWE-416: Use After Free

Product status

< 3.23.0
affected

References

github.com/...reeRDP/security/advisories/GHSA-78xg-v4p2-4w3c exploit

github.com/...reeRDP/security/advisories/GHSA-78xg-v4p2-4w3c

github.com/...ommit/d3e8b3b9365be96a4f11dda149d71b3287227d0a

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

github.com/...806c2a5c583ca39dd9ef1e/client/X11/xf_cliprdr.c

cve.org (CVE-2026-25959)

nvd.nist.gov (CVE-2026-25959)

Download JSON