FreeRDP: Persistent Cache bmpSize Desync - Heap OOB Write
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · High
- Fix status
- Partial Red Hat: 4 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat.
Summary
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.24.2, in persistent_cache_read_entry_v3() in libfreerdp/cache/persistent.c, persistent->bmpSize is updated before winpr_aligned_recalloc(). If realloc fails, bmpSize is inflated while bmpData points to the old buffer. This issue has been patched in version 3.24.2.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA FreeRDP (FreeRDP) Fixed in 3.24.2
Red Hat 3 advisories
- RHSA-2026:20605 Released 2026-05-26 · Red Hat rating Moderatefreerdp security update
- Red Hat Enterprise Linux AppStream EUS (v. 10.0) freerdp-2:3.10.3-3.el10_0.7, freerdp-libs-2:3.10.3-3.el10_0.7, libwinpr-2:3.10.3-3.el10_0.7
- Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) freerdp-devel-2:3.10.3-3.el10_0.7, freerdp-server-2:3.10.3-3.el10_0.7, libwinpr-devel-2:3.10.3-3.el10_0.7
- RHSA-2026:19142 Released 2026-05-19 · Red Hat rating Moderatefreerdp security update
- Red Hat Enterprise Linux AppStream (v. 10) freerdp-2:3.10.3-12.el10_2.5, freerdp-libs-2:3.10.3-12.el10_2.5, libwinpr-2:3.10.3-12.el10_2.5
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) freerdp-devel-2:3.10.3-12.el10_2.5, freerdp-server-2:3.10.3-12.el10_2.5, libwinpr-devel-2:3.10.3-12.el10_2.5
- RHSA-2026:16014 Released 2026-05-11 · Red Hat rating Moderatefreerdp security update
- Red Hat Enterprise Linux AppStream (v. 10) freerdp-2:3.10.3-5.el10_1.8, freerdp-libs-2:3.10.3-5.el10_1.8, libwinpr-2:3.10.3-5.el10_1.8
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) freerdp-devel-2:3.10.3-5.el10_1.8, freerdp-server-2:3.10.3-5.el10_1.8, libwinpr-devel-2:3.10.3-5.el10_1.8
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 6 | Affected | No fix planned: Will not fix |
| Red Hat Enterprise Linux AppStream (v. 10) | Fixed | RHSA-2026:16014, RHSA-2026:19142 |
| Red Hat Enterprise Linux AppStream EUS (v. 10.0) | Fixed | RHSA-2026:20605 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) | Fixed | RHSA-2026:16014, RHSA-2026:19142 |
| Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) | Fixed | RHSA-2026:20605 |
Not affected: 3 products
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
Timeline
- 2026-10-02 Threatist record created from CVE-2026-33987
References
More Freerdp vulnerabilities
- TI-2026-85092 Use-after-free in FreeRDP rdpgfx channel close handling CVSS 4.0CRITICAL 9.3
- TI-2026-85091 Out-of-bounds write in FreeRDP proxy via bitmap cache v2 capability CVSS 4.0CRITICAL 9.3
- TI-2026-24435 FreeRDP has a `size_t` underflow in ADPCM decoder leads to heap-buffer-overflow write CVSS 3.1CRITICAL 9.8
- TI-2023-21373 Out-Of-Bounds Write in FreeRDP CVSS 3.1CRITICAL 9.8
- TI-2022-08692 Server side NTLM does not properly check parameters in FreeRDP CVSS 3.1CRITICAL 9.1
- TI-2023-21374 Out-Of-Bounds Read in FreeRDP CVSS 3.1CRITICAL 9.1
Sources
- CVE-2026-33987 · CVE Program
- CVE-2026-33987 · NVD
- FIRST EPSS
- CVE-2026-33987 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences