Raw vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XSummary
CVE-2026-31806 is a critical-severity Heap-based Buffer Overflow (CWE-122) vulnerability in Freerdp Freerdp. Its CVSS base score is 9.3 (Critical).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked at the 48th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-31806 is a heap buffer overflow vulnerability in FreeRDP, a free implementation of the Remote Desktop Protocol, affecting versions prior to 3.24.0. The flaw occurs in the gdi_surface_bits() function when processing SURFACE_BITS_COMMAND messages sent by the RDP server using NSCodec. The bmp.width and bmp.height values provided by the server are not properly validated against the actual desktop dimensions, enabling a malicious server to supply crafted values that exceed the expected surface size. This leads to improper bounds checking during bitmap decoding and memory operations, classified under CWE-122 with a CVSS score of 9.8 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
A remote attacker controlling a malicious RDP server can exploit this vulnerability when a victim client connects to it. By sending oversized bmp.width and bmp.height values along with controlled pixel data, the attacker triggers a heap buffer overflow, allowing overwrite of adjacent heap memory. This may enable arbitrary code execution or other severe impacts, requiring no authentication or user interaction from the victim.
The vulnerability is addressed in FreeRDP version 3.24.0. Mitigation involves updating to 3.24.0 or later. Details are available in the fix commit at https://github.com/FreeRDP/FreeRDP/commit/83d9aedea278a74af3e490ff5eeb889c016dbb2b and the GitHub security advisory at https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-rrqm-46rj-cmx2.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-12060
Vulnerability Data
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, the gdi_surface_bits() function processes SURFACE_BITS_COMMAND messages sent by the RDP server. When the command is handled using NSCodec, the bmp.width and bmp.height values provided by the server…
more
are not properly validated against the actual desktop dimensions. A malicious RDP server can supply crafted bmp.width and bmp.height values that exceed the expected surface size. Because these values are used during bitmap decoding and memory operations without proper bounds checking, this can lead to a heap buffer overflow. Since the attacker can also control the associated pixel data transmitted by the server, the overflow may be exploitable to overwrite adjacent heap memory. This vulnerability is fixed in 3.24.0.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
—
—
—
V1.4.1
Mitigating Controls (NIST 800-53 r5) AI
Developer testing and evaluation (including fuzzing and memory-error detectors) can discover heap overflows after they have been coded.
Input validation enforces bounds checking on data written to heap buffers, directly stopping the overflow condition from being introduced.
Security engineering principles require use of memory-safe constructs and bounds-checked allocation routines that avoid introducing heap overflows.
Memory-protection mechanisms limit the ability of a heap overflow to execute attacker-controlled code or corrupt adjacent structures.
Flaw-remediation processes that include vulnerability scanning or static analysis will surface buffer-size errors.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Secure-development practices directly require bounds checking and safe memory handling that prevent heap overflows.
Vulnerability scanning and recording can discover heap-overflow flaws but does not prevent their introduction in code.
Timely patching removes known heap-overflow instances after they exist.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Secure coding standards directly require correct buffer-size calculations.
Security testing in development and acceptance can detect heap overflows before release.
Secure development lifecycle mandates practices that reduce the likelihood of introducing heap overflows.
Application security requirements can specify bounds-checking and safe memory APIs that mitigate heap overflows.
Secure architecture and engineering principles include memory-safety and input-validation controls that address heap overflows.
Change management ensures controlled deployment of fixes for discovered heap-overflow vulnerabilities.