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-develUpgrade libwinprUpgrade freerdp-libs | Apr 2, 2026 | Mar 30, 2026 |
| Alpine Linux | — | Upgrade freerdp | Mar 2, 2026 | Feb 25, 2026 |
| Amazon Linux Ami 2 | — | Upgrade libwinprUpgrade freerdp-debuginfoUpgrade freerdp-develUpgrade freerdp-libsUpgrade libwinpr-develUpgrade freerdp | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade freerdp-libsUpgrade freerdp-libs-debuginfoUpgrade freerdp-develUpgrade freerdp-serverUpgrade freerdp-debugsourceUpgrade libwinpr-develUpgrade freerdp-server-debuginfoUpgrade libwinpr-debuginfoUpgrade libwinprUpgrade freerdpUpgrade freerdp-debuginfo | Mar 27, 2026 | Feb 25, 2026 |
| Debian | — | Upgrade freerdp3 | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade freerdpUpgrade libwinprUpgrade libwinpr-develUpgrade freerdp-develUpgrade freerdp-libsUpgrade freerdp-server | Mar 27, 2026 | Feb 25, 2026 |
| Redhat_linux | — | Upgrade libwinprUpgrade freerdp-libsUpgrade freerdp-serverUpgrade freerdp-develUpgrade freerdp-libs-debuginfoUpgrade freerdp-server-debuginfoUpgrade libwinpr-debuginfoUpgrade freerdp-debuginfoUpgrade freerdp-debugsourceUpgrade libwinpr-develUpgrade freerdp | Mar 27, 2026 | Feb 25, 2026 |
| Rocky_linux | — | Upgrade freerdp-libsUpgrade libwinpr-debuginfoUpgrade libwinprUpgrade freerdp-debugsourceUpgrade freerdp-develUpgrade freerdpUpgrade libwinpr-develUpgrade freerdp-libs-debuginfoUpgrade freerdp-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