FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, in the RLE planar decode path, `planar_decompress_plane_rle()` writes into `pDstData` at `((nYDst+y) * nDstStep) + (4*nXDst) + nChannel` without verifying that `(nYDst+nSrcHeight)` fits in the destination height or that `(nXDst+nSrcWidth)` fits in the destination stride. When `TempFormat != DstFormat`, `pDstData` becomes `planar->pTempData` (sized for the desktop), while `nYDst` is only validated against the **surface** by `is_within_surface()`. A malicious RDP server can exploit this to perform a heap out-of-bounds write with attacker-controlled offset and pixel data on any connecting FreeRDP client. The OOB write reaches up to 132,096 bytes past the temp buffer end, and on the brk heap (desktop ≤ 128×128), an adjacent `NSC_CONTEXT` struct's `decode` function pointer is overwritten with attacker-controlled pixel data — control-flow–relevant corruption (function pointer overwritten) demonstrated under deterministic heap layout (`nsc->decode = 0xFF414141FF414141`). Version 3.23.0 fixes the vulnerability.
Conclusion & alert: CVE-2026-26965 is rated High Exploit Risk (61/100): CVSS High severity, with low exploitation likelihood (EPSS 0.38%). Core evidence: 1 public exploit reference(s) are indexed (Exploit-DB). Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
| EDB-ID | Source | Kind | Published | Link |
|---|---|---|---|---|
| — | nvd_ref | exploit_tag | Exploit-DB ↗ |
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 0.03% | 0.38% | +0.35% |
| 2 | 2026-04-21 | 0.06% | 0.03% | -0.03% |
| 3 | 2026-03-03 | — | 0.06% | — |
Full EPSS history (4 records total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 8.8 | 3.1 | HIGH |
|
2.8 | 5.9 | [email protected] |
| vendor | priority | summary | link |
|---|---|---|---|
alpine
|
— | CVE-2026-26965: 1 source package rows (freerdp); 28 state rows across 2 repos (3.23-community, edge-community); fixed 2, open 26. | https://security.alpinelinux.org/vuln/CVE-2026-26965 |
debian
|
not yet assigned | CVE-2026-26965 not yet assigned priority: Debian including 2 source packages (freerdp2, freerdp3), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 3, open 2. | https://security-tracker.debian.org/tracker/CVE-2026-26965 |
redhat
|
high | — | https://access.redhat.com/security/cve/CVE-2026-26965 |
suse
|
high | CVE-2026-26965 severity important: SUSE including 72 source package names (freerdp, freerdp-2.11.2-150600.4.18.1, …), 100 product×package rows across 10 product lines (SUSE Liberty Linux 8, SUSE Liberty Linux 9, … (10 product lines)): Fixed 63, Known Not Affected 37. | https://www.suse.com/security/cve/CVE-2026-26965/ |
ubuntu
|
medium | CVE-2026-26965 medium priority: Ubuntu including 3 source packages (freerdp, freerdp2, freerdp3), 16 status rows across 7 suites (bionic, focal, jammy, noble, questing, upstream, xenial): needs-triage 8, DNE 5, released 3. | https://ubuntu.com/security/CVE-2026-26965 |
| URL | Tags |
|---|---|
| https://github.com/FreeRDP/FreeRDP/commit/a0be5cb87d760bb1c803ad1bb835aa1e73e62abc | Patch |
| https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-5vgf-mw4f-r33h | Exploit Mitigation Patch Vendor Advisory |