FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a malicious RDP server can trigger a heap buffer overflow in FreeRDP clients using the GDI surface pipeline (e.g., `xfreerdp`) by sending an RDPGFX ClearCodec surface command with an out-of-bounds destination rectangle. The `gdi_SurfaceCommand_ClearCodec()` handler does not call `is_within_surface()` to validate the command rectangle against the destination surface dimensions, allowing attacker-controlled `cmd->left`/`cmd->top` (and subcodec rectangle offsets) to reach image copy routines that write into `surface->data` without bounds enforcement. The OOB write corrupts an adjacent `gdiGfxSurface` struct's `codecs*` pointer with attacker-controlled pixel data, and corruption of `codecs*` is sufficient to reach an indirect function pointer call (`NSC_CONTEXT.decode` at `nsc.c:500`) on a subsequent codec command — full instruction pointer (RIP) control demonstrated in exploitability harness. Users should upgrade to version 3.23.0 to receive a patch.
CVSS Details
- CVSS 3.1 Base Score: 8.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade freerdpUpgrade libwinpr-develUpgrade freerdp-libsUpgrade libwinprUpgrade freerdp-devel | Apr 2, 2026 | Mar 30, 2026 |
| Alpine Linux | — | Upgrade freerdp | Mar 2, 2026 | Feb 25, 2026 |
| Amazon Linux Ami 2 | — | Upgrade freerdp-debuginfoUpgrade libwinprUpgrade freerdp-develUpgrade freerdp-libsUpgrade freerdpUpgrade libwinpr-devel | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade freerdp-server-debuginfoUpgrade libwinpr-debuginfoUpgrade freerdp-debuginfoUpgrade libwinprUpgrade libwinpr-develUpgrade freerdpUpgrade freerdp-libs-debuginfoUpgrade freerdp-develUpgrade freerdp-libsUpgrade freerdp-debugsourceUpgrade freerdp-server | Mar 27, 2026 | Feb 25, 2026 |
| Debian | — | Upgrade freerdp3 | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade libwinprUpgrade freerdpUpgrade libwinpr-develUpgrade freerdp-serverUpgrade freerdp-develUpgrade freerdp-libs | Mar 27, 2026 | Feb 25, 2026 |
| Redhat_linux | — | Upgrade freerdp-debuginfoUpgrade libwinpr-develUpgrade freerdpUpgrade freerdp-debugsourceUpgrade freerdp-serverUpgrade freerdp-server-debuginfoUpgrade libwinpr-debuginfoUpgrade freerdp-libs-debuginfoUpgrade freerdp-develUpgrade libwinprUpgrade freerdp-libs | Mar 27, 2026 | Feb 25, 2026 |
| Rocky_linux | — | Upgrade freerdp-develUpgrade freerdp-debuginfoUpgrade freerdpUpgrade libwinpr-develUpgrade freerdp-libs-debuginfoUpgrade freerdp-debugsourceUpgrade libwinprUpgrade freerdp-libsUpgrade libwinpr-debuginfo | Apr 8, 2026 | Apr 7, 2026 |
| Ubuntu | — | Upgrade libfreerdp3-3 | Mar 19, 2026 | Feb 25, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub