CVE-2026-26965
Fixed in a distro release EPSS <1%CVSS 8.8
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.
Products: FreeRDP, Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 10.0 Extended Update Support, Red Hat Enterprise Linux 7 Extended Lifecycle Support, Red Hat Enterprise Linux 8, Red Hat Enterprise Linux 8.2 Advanced Update Support, Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update Support, Red Hat Enterprise Linux 8.4 Extended Update Support Long-Life Add-On, Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update Support, Red Hat Enterprise Linux 8.6 Telecommunications Update Service, Red Hat Enterprise Linux 8.6 Update Services for SAP Solutions, Red Hat Enterprise Linux 8.8 Telecommunications Update Service, Red Hat Enterprise Linux 8.8 Update Services for SAP Solutions, Red Hat Enterprise Linux 9, Red Hat Enterprise Linux 9.0 Update Services for SAP Solutions, Red Hat Enterprise Linux 9.2 Update Services for SAP Solutions, Red Hat Enterprise Linux 9.4 Extended Update Support, Red Hat Enterprise Linux 9.6 Extended Update Support, Red Hat Enterprise Linux 6
Distro releases
| Release | Package | Fixed in |
|---|---|---|
| AlmaLinux 10 | freerdp | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 10 | freerdp-devel | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 10 | freerdp-libs | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 10 | freerdp-server | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 10 | libwinpr | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 10 | libwinpr-devel | 2:3.10.3-5.el10_1.3 |
| AlmaLinux 8 | freerdp | 2:2.11.7-4.el8_10 |
| AlmaLinux 8 | freerdp-devel | 2:2.11.7-4.el8_10 |
| AlmaLinux 8 | freerdp-libs | 2:2.11.7-4.el8_10 |
| AlmaLinux 8 | libwinpr | 2:2.11.7-4.el8_10 |
| AlmaLinux 8 | libwinpr-devel | 2:2.11.7-4.el8_10 |
| AlmaLinux 9 | freerdp | 2:2.11.7-1.el9_7.3 |
| AlmaLinux 9 | freerdp-devel | 2:2.11.7-1.el9_7.3 |
| AlmaLinux 9 | freerdp-libs | 2:2.11.7-1.el9_7.3 |
| AlmaLinux 9 | libwinpr | 2:2.11.7-1.el9_7.3 |
| AlmaLinux 9 | libwinpr-devel | 2:2.11.7-1.el9_7.3 |
| Amazon Linux 2 | freerdp | 2:2.11.7-1.amzn2.0.6 |
| Amazon Linux 2 | freerdp-devel | 2:2.11.7-1.amzn2.0.6 |
| Amazon Linux 2 | freerdp-libs | 2:2.11.7-1.amzn2.0.6 |
| Amazon Linux 2 | libwinpr | 2:2.11.7-1.amzn2.0.6 |
| Amazon Linux 2 | libwinpr-devel | 2:2.11.7-1.amzn2.0.6 |
| Amazon Linux 2023 | freerdp | 2:3.6.3-1.amzn2023.0.5 |
| Amazon Linux 2023 | freerdp-devel | 2:3.6.3-1.amzn2023.0.5 |
| Amazon Linux 2023 | freerdp-libs | 2:3.6.3-1.amzn2023.0.5 |
| Amazon Linux 2023 | freerdp-server | 2:3.6.3-1.amzn2023.0.5 |
| Amazon Linux 2023 | libwinpr | 2:3.6.3-1.amzn2023.0.5 |
| Amazon Linux 2023 | libwinpr-devel | 2:3.6.3-1.amzn2023.0.5 |
| Debian 12 | freerdp2 | no fix |
| Debian 13 | freerdp3 | 3.15.0+dfsg-2.1+deb13u1 |
| Debian 14 | freerdp3 | 3.23.0+dfsg-1 |
| Red Hat Enterprise Linux 10.1 | freerdp | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-debuginfo | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-debugsource | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-devel | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-libs | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-libs-debuginfo | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-server | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | freerdp-server-debuginfo | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | libwinpr | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | libwinpr-debuginfo | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.1 | libwinpr-devel | 2:3.10.3-5.el10_1.3 |
| Red Hat Enterprise Linux 10.2 | freerdp | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-debuginfo | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-debugsource | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-devel | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-libs | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-libs-debuginfo | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-server | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | freerdp-server-debuginfo | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | libwinpr | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | libwinpr-debuginfo | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 10.2 | libwinpr-devel | 2:3.10.3-12.el10_2.2 |
| Red Hat Enterprise Linux 8 | freerdp | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | freerdp-debuginfo | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | freerdp-debugsource | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | freerdp-devel | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | freerdp-libs | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | freerdp-libs-debuginfo | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | libwinpr | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | libwinpr-debuginfo | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 8 | libwinpr-devel | 2:2.11.7-4.el8_10 |
| Red Hat Enterprise Linux 9 | freerdp | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | freerdp-debuginfo | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | freerdp-debugsource | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | freerdp-devel | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | freerdp-libs | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | freerdp-libs-debuginfo | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | libwinpr | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | libwinpr-debuginfo | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux 9 | libwinpr-devel | 2:2.11.7-1.el9_7.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-debuginfo | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-debugsource | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-devel | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-libs | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-libs-debuginfo | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-server | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | freerdp-server-debuginfo | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | libwinpr | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | libwinpr-debuginfo | 2:3.10.3-3.el10_0.3 |
| Red Hat Enterprise Linux eus 10.0 | libwinpr-devel | 2:3.10.3-3.el10_0.3 |
| Red Hat rhel aus 8.2 | freerdp | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | freerdp-debuginfo | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | freerdp-debugsource | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | freerdp-libs | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | freerdp-libs-debuginfo | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | libwinpr | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | libwinpr-debuginfo | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.2 | libwinpr-devel | 2:2.0.0-46.rc4.el8_2.8 |
| Red Hat rhel aus 8.4 | freerdp | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | freerdp-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | freerdp-debugsource | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | freerdp-libs | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | freerdp-libs-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | libwinpr | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | libwinpr-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.4 | libwinpr-devel | 2:2.2.0-10.el8_4 |
| Red Hat rhel aus 8.6 | freerdp | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | freerdp-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | freerdp-debugsource | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | freerdp-libs | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | freerdp-libs-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | libwinpr | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | libwinpr-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel aus 8.6 | libwinpr-devel | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | freerdp | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | freerdp-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | freerdp-debugsource | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | freerdp-libs | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | freerdp-libs-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | libwinpr | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | libwinpr-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.6 | libwinpr-devel | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel e4s 8.8 | freerdp | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | freerdp-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | freerdp-debugsource | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | freerdp-libs | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | freerdp-libs-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | libwinpr | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | libwinpr-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 8.8 | libwinpr-devel | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel e4s 9.0 | freerdp | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | freerdp-debuginfo | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | freerdp-debugsource | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | freerdp-libs | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | freerdp-libs-debuginfo | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | libwinpr | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.0 | libwinpr-debuginfo | 2:2.4.1-3.el9_0.2 |
| Red Hat rhel e4s 9.2 | freerdp | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | freerdp-debuginfo | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | freerdp-debugsource | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | freerdp-libs | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | freerdp-libs-debuginfo | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | libwinpr | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel e4s 9.2 | libwinpr-debuginfo | 2:2.4.1-6.el9_2.4 |
| Red Hat rhel els 7 | freerdp | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel els 7 | freerdp-debuginfo | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel els 7 | freerdp-devel | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel els 7 | freerdp-libs | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel els 7 | libwinpr | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel els 7 | libwinpr-devel | 0:2.1.1-5.el7_9.5 |
| Red Hat rhel eus 9.4 | freerdp | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | freerdp-debuginfo | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | freerdp-debugsource | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | freerdp-devel | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | freerdp-libs | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | freerdp-libs-debuginfo | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | libwinpr | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | libwinpr-debuginfo | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.4 | libwinpr-devel | 2:2.11.2-1.el9_4.3 |
| Red Hat rhel eus 9.6 | freerdp | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | freerdp-debuginfo | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | freerdp-debugsource | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | freerdp-devel | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | freerdp-libs | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | freerdp-libs-debuginfo | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | libwinpr | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | libwinpr-debuginfo | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus 9.6 | libwinpr-devel | 2:2.11.7-1.el9_6.5 |
| Red Hat rhel eus long life 8.4 | freerdp | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | freerdp-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | freerdp-debugsource | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | freerdp-libs | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | freerdp-libs-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | libwinpr | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | libwinpr-debuginfo | 2:2.2.0-10.el8_4 |
| Red Hat rhel eus long life 8.4 | libwinpr-devel | 2:2.2.0-10.el8_4 |
| Red Hat rhel tus 8.6 | freerdp | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | freerdp-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | freerdp-debugsource | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | freerdp-libs | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | freerdp-libs-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | libwinpr | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | libwinpr-debuginfo | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.6 | libwinpr-devel | 2:2.2.0-7.el8_6.3 |
| Red Hat rhel tus 8.8 | freerdp | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | freerdp-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | freerdp-debugsource | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | freerdp-libs | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | freerdp-libs-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | libwinpr | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | libwinpr-debuginfo | 2:2.2.0-12.el8_8.3 |
| Red Hat rhel tus 8.8 | libwinpr-devel | 2:2.2.0-12.el8_8.3 |
| Rocky Linux 8 | freerdp | 2:2.11.7-4.el8_10 |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | freerdp | 3.10.3-150700.3.9.1 |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | freerdp | 2.11.2-150600.4.18.1 |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | freerdp | 2.4.0-150400.3.47.1 |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | freerdp2 | 2.11.7-150700.3.14.1 |
| SUSE Linux Enterprise Server 12 SP5-LTSS | freerdp | 2.1.2-12.63.1 |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | freerdp | 2.1.2-12.63.1 |
| SUSE Linux Enterprise Workstation Extension 15 SP7 | freerdp | 3.10.3-150700.3.9.1 |
| SUSE Linux Enterprise Workstation Extension 15 SP7 | freerdp2 | 2.11.7-150700.3.14.1 |
| Ubuntu 16.04 LTS | freerdp | no fix |
| Ubuntu 18.04 LTS | freerdp | no fix |
| Ubuntu 22.04 LTS | freerdp2 | no fix |
| Ubuntu 24.04 LTS | freerdp3 | 3.5.1+dfsg1-0ubuntu1.4 |
| Ubuntu 25.10 | freerdp3 | 3.16.0+dfsg-2ubuntu0.3 |
| Ubuntu Pro 18.04 LTS | freerdp2 | no fix |
| Ubuntu Pro 20.04 LTS | freerdp2 | no fix |
| Ubuntu Pro 24.04 LTS | freerdp2 | no fix |
| openSUSE Leap 15.6 | freerdp | 2.11.2-150600.4.18.1 |
| openSUSE Tumbleweed | freerdp | 3.24.1-1.1 |
| openSUSE Tumbleweed | freerdp2 | 2.11.7-6.1 |