CVE-2026-121958
Undergoing Analysis Undergoing Analysis - In Progress

Heap Out-of-Bounds Write in FreeRDP

Vulnerability report for CVE-2026-121958, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-04

Last updated on: 2026-11-04

Assigner: VulnCheck

Description

FreeRDP through 3.32.1 has a heap out-of-bounds write in the RDPGFX client because the delete_surface callback truncates surface hash keys to 16 bits, leaving the surface table inconsistent so HashTable_GetKeys writes past its allocated key array. A malicious or man-in-the-middle RDP server can exploit this by creating surfaceId 0xFFFF, closing the RDPGFX channel, sending repeated DELETESURFACE PDUs, and then sending ENDFRAME or RESETGRAPHICS.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-04
Last Modified
2026-11-04
Generated
2026-11-04
AI Q&A
2026-11-04
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
FreeRDP FreeRDP 0

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-122 A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-121958 is a heap out-of-bounds write flaw in FreeRDP versions up to 3.32.1. It occurs in the RDPGFX client due to a bug in the delete_surface callback that truncates surface hash keys to 16 bits. This causes the surface table to become inconsistent, allowing HashTable_GetKeys to write past its allocated key array. An attacker can exploit this by creating a surface with ID 0xFFFF, closing the RDPGFX channel, sending repeated DELETESURFACE PDUs, and then sending ENDFRAME or RESETGRAPHICS commands.

Detection Guidance

Detecting this vulnerability requires monitoring for unusual RDPGFX channel activity. Check FreeRDP versions with 'xfreerdp --version' or 'apt list --installed | grep freerdp'. Inspect network traffic for repeated DELETESURFACE PDUs or ENDFRAME/RESETGRAPHICS commands targeting surface ID 0xFFFF. Enable verbose logging in FreeRDP with '-log-level DEBUG' to capture protocol anomalies.

Impact Analysis

This vulnerability can allow a malicious or man-in-the-middle RDP server to crash the FreeRDP client or potentially execute arbitrary code on the affected system. Users running vulnerable FreeRDP versions may experience application crashes or remote code execution if they connect to a compromised RDP server.

Mitigation Strategies

Upgrade FreeRDP to version 3.22.2 or later immediately. If upgrading is not possible, disable the RDPGFX channel by removing 'rdpgfx' from the FreeRDP configuration or command line. Restrict RDP access via firewalls to trusted sources only. Monitor for suspicious RDP server behavior, such as repeated surface deletions or channel resets.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-121958. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...