CVE-2026-26965
published 2026-02-25CVE-2026-26965: 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…
PriorityP356high8.8CVSS 3.1
AVNACLPRNUIRSUCHIHAH
EPSS
0.59%
44.3th percentile
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.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | freerdp2 | < freerdp3 3.23.0+dfsg-1 (forky) | freerdp3 3.23.0+dfsg-1 (forky) |
| debian | freerdp3 | < freerdp3 3.23.0+dfsg-1 (forky) | freerdp3 3.23.0+dfsg-1 (forky) |
| freerdp | freerdp | < 3.23.0 | 3.23.0 |
CVSS provenance
nvdv3.18.8HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
osv8.8HIGH
vendor_debian8.8HIGH
vendor_redhat8.8HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
VulDB
FreeRDP up to 3.22.x planar_decompress_plane_rle out-of-bounds write (GHSA-5vgf-mw4f-r33h / Nessus ID 299995)
vuldb·2026-05-14·CVSS 8.8
CVE-2026-26965 [HIGH] FreeRDP up to 3.22.x planar_decompress_plane_rle out-of-bounds write (GHSA-5vgf-mw4f-r33h / Nessus ID 299995)
A vulnerability labeled as critical has been found in FreeRDP up to 3.22.x. This issue affects the function planar_decompress_plane_rle. The manipulation results in out-of-bounds write.
This vulnerability was named CVE-2026-26965. The attack may be performed from remote. There is no available exploit.
The affected component should be upgraded.
OSV
CVE-2026-26965: FreeRDP is a free implementation of the Remote Desktop Protocol
osv·2026-02-25·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965: FreeRDP is a free implementation of the Remote Desktop Protocol
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 ≤ 12
Ubuntu
FreeRDP vulnerabilities
vendor_ubuntu·2026-03-18
CVE-2026-25954 FreeRDP vulnerabilities
Title: FreeRDP vulnerabilities
Summary: Several security issues were fixed in FreeRDP.
It was discovered that FreeRDP incorrectly handled certain RDP packets. A
remote attacker could use this issue to cause FreeRDP to crash, resulting
in a denial of service, or possibly execute arbitrary code.
Instructions: In general, a standard system update will make all the necessary changes.
Red Hat
freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
vendor_redhat·2026-02-25·CVSS 8.8
CVE-2026-26965 [HIGH] CWE-787 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
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. Th
Debian
CVE-2026-26965: freerdp2 - FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to versio...
vendor_debian·2026·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965: freerdp2 - FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to versio...
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 ≤ 12
No detection rules found.
No public exploits indexed.
Wiz
CVE-2026-26965 Impact, Exploitability, and Mitigation Steps | Wiz
blogs_wiz·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965 Impact, Exploitability, and Mitigation Steps | Wiz
## CVE-2026-26965 :
NixOS vulnerability analysis and mitigation
planar_decompress_plane_rle()
pDstData
((nYDst+y) * nDstStep) + (4*nXDst) + nChannel
(nYDst+nSrcHeight)
(nXDst+nSrcWidth)
TempFormat != DstFormat
pDstData
planar->pTempData
nYDst
is_within_surface()
NSC_CONTEXT
decode
nsc->decode = 0xFF414141FF414141
Source : NVD
## 8.8
Score
Published February 25, 2026
Severity HIGH
CNA Score 8.8
Affected Technologies
NixOS
Alma Linux
Has Public Exploit Yes
Has CISA KEV Exploit No
CISA KEV Release Date N/A
CISA KEV Due Date N/A
Exploitation Probability Percentile (EPSS) 19
Exploitation Probability (EPSS) 0.1
Affected packages and libraries
freerdp-debuginfo
freerdp-libs-debuginfo
Sources
NVD
AlmaLinux 8 Severity HIGH Has Fix Added at: Apr 05, 2026
AlmaLin
Bugzilla
CVE-2026-26965 freerdp2: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
bugzilla·2026-02-26·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965 freerdp2: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
CVE-2026-26965 freerdp2: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
Discussion:
This message is a reminder that Fedora Linux 42 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 42 on 2026-05-13.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '42'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a c
Bugzilla
CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
bugzilla·2026-02-26·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path
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 Fre
Bugzilla
CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
bugzilla·2026-02-26·CVSS 8.8
CVE-2026-26965 [HIGH] CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
CVE-2026-26965 freerdp: FreeRDP: Arbitrary code execution via heap out-of-bounds write in RLE planar decode path [fedora-42]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
Discussion:
This bug is already fixed in a published Bodhi update.
---
FEDORA-2026-53fe996a57 (freerdp-3.23.0-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-53fe996a57
---
FEDORA-2026-53fe996a57 (freerdp-3.23.0-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.
https://github.com/FreeRDP/FreeRDP/commit/a0be5cb87d760bb1c803ad1bb835aa1e73e62abchttps://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-5vgf-mw4f-r33hhttps://access.redhat.com/errata/RHSA-2026:19033https://access.redhat.com/errata/RHSA-2026:5936https://access.redhat.com/errata/RHSA-2026:5939https://access.redhat.com/errata/RHSA-2026:6004https://access.redhat.com/errata/RHSA-2026:6005https://access.redhat.com/errata/RHSA-2026:6384https://access.redhat.com/errata/RHSA-2026:6385https://access.redhat.com/errata/RHSA-2026:6395https://access.redhat.com/errata/RHSA-2026:6396https://access.redhat.com/errata/RHSA-2026:6616https://access.redhat.com/errata/RHSA-2026:6665https://access.redhat.com/errata/RHSA-2026:6712https://access.redhat.com/errata/RHSA-2026:6764https://access.redhat.com/errata/RHSA-2026:7292https://access.redhat.com/security/cve/CVE-2026-26965https://bugzilla.redhat.com/show_bug.cgi?id=2442959https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-26965.json
2026-02-25
Published