{"id":"CVE-2026-121964","kind":"vulnerability","aliases":["CVE-2026-121964"],"related":[],"title":"FreeRDP: malicious RD Gateway can overflow client heap memory","description":"FreeRDP before 3.32.2 contains a heap-based buffer overflow in the RD Gateway RPC client, where rpc_client_recv_fragment writes BIND_ACK and ALTER_CONTEXT_RESP fragments into a persistent PDU stream after checking only total capacity rather than remaining capacity from the current stream position. A malicious or compromised RD Gateway can send crafted RPC fragments with manipulated alloc_hint and frag_length values to overwrite client heap memory with attacker-controlled data, causing a crash or potentially arbitrary code execution.","summary":"FreeRDP's RD Gateway RPC client copies BIND_ACK and ALTER_CONTEXT_RESP fragments without checking remaining buffer space, so crafted fragments with manipulated size values overwrite heap memory. An attacker controlling or compromising a RD Gateway can crash the client or potentially run code on it.","severity":"high","cvss":8.7,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["freerdp","package","rd-gateway","remote-desktop"],"not_affected_if":["fixed-version","no-rd-gateway"],"how_to_check":"- Check the installed FreeRDP version with `xfreerdp --version` or the package manager, and compare against the fixed release.\n- Look for whether connections go through an RD Gateway (gateway settings in the client configuration or `/g:` option).","fix":"- FreeRDP: move to `3.32.2` or later (the sources say 'before 3.32.2' is affected).","status":"open","published_at":"2026-11-04T16:17:49+00:00","first_seen_at":"2026-11-04T16:28:15+00:00","triaged_at":"2026-11-04T16:28:37+00:00","updated_at":"2026-11-04T16:28:37+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-11-04T16:28:37Z","model":"claude-haiku-5-5","output":{"fix":"- FreeRDP: move to `3.32.2` or later (the sources say 'before 3.32.2' is affected).","reach":"network","title":"FreeRDP: malicious RD Gateway can overflow client heap memory","impact":"high","summary":"FreeRDP's RD Gateway RPC client copies BIND_ACK and ALTER_CONTEXT_RESP fragments without checking remaining buffer space, so crafted fragments with manipulated size values overwrite heap memory. An attacker controlling or compromising a RD Gateway can crash the client or potentially run code on it.","audience":"businesses","category":"package","nicknames":[],"who_cares":["freerdp","remote-desktop","rd-gateway"],"confidence":0.7,"fix_status":"available","needs_auth":"unknown","worst_case":"Client crashes or attacker-controlled code may run on the client.","analyst_note":"Confirm the affected version range and whether the vendor advisory on github.com lists any workaround besides upgrading.","how_to_check":"- Check the installed FreeRDP version with `xfreerdp --version` or the package manager, and compare against the fixed release.\n- Look for whether connections go through an RD Gateway (gateway settings in the client configuration or `/g:` option).","plain_action":"","needs_analyst":true,"not_affected_if":["no-rd-gateway","fixed-version"],"who_is_affected":"Only FreeRDP clients that connect through an RD Gateway are described as exposed, since the flaw is in parsing RPC replies from the gateway. A malicious or compromised gateway is the attack source, so clients connecting directly without a gateway are not described as affected. Teams that build or ship FreeRDP-based remote desktop clients should identify which versions they bundle.","user_interaction":"unknown","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.000749,"input_tokens":4263,"output_tokens":646,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-121964':12A,15A '-2026':11A,14A '3.32.2':71C 'ack':32B,92C 'alloc':130C 'alter':34B,94C 'arbitrari':151C 'attack':54B,143C 'attacker-control':142C 'base':76C 'bind':31B,91C 'buffer':41B,77C 'capac':107C,111C 'caus':146C 'check':39B,104C 'client':7A,29B,64B,84C,87C,138C 'code':68B,152C 'compromis':57B,120C 'contain':72C 'context':35B,95C 'control':55B,144C 'copi':30B 'craft':44B,125C 'crash':62B,148C 'current':114C 'cve':10A,13A 'data':145C 'desktop':23B 'execut':153C 'frag':133C 'fragment':37B,45B,89C,97C,127C 'freerdp':1A,16B,24B,69C 'gateway':4A,20B,27B,60B,82C,122C 'heap':8A,51B,75C,139C 'heap-bas':74C 'hint':131C 'length':134C 'malici':2A,118C 'manipul':47B,129C 'memori':9A,52B,140C 'overflow':6A,78C 'overwrit':50B,137C 'packag':17B 'pdu':101C 'persist':100C 'posit':116C 'potenti':66B,150C 'rather':108C 'rd':3A,19B,26B,59B,81C,121C 'rd-gateway':18B 'recv':88C 'remain':40B,110C 'remot':22B 'remote-desktop':21B 'resp':36B,96C 'rpc':28B,83C,86C,126C 'run':67B 'send':124C 'size':48B 'space':42B 'stream':102C,115C 'total':106C 'valu':49B,135C 'without':38B 'write':90C","nicknames":[],"mitigations":[],"who_affected":"Only FreeRDP clients that connect through an RD Gateway are described as exposed, since the flaw is in parsing RPC replies from the gateway. A malicious or compromised gateway is the attack source, so clients connecting directly without a gateway are not described as affected. Teams that build or ship FreeRDP-based remote desktop clients should identify which versions they bundle.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["freerdp","high","package","rdgateway","remotedesktop"],"campaign_type":null,"first_public_at":"2026-10-20T17:12:54+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/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:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-121964","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-121964","severity":null,"published_at":"2026-11-04T16:17:49+00:00","modified_at":"2026-11-04T16:17:49+00:00","first_seen_at":"2026-11-04T16:28:15+00:00","fetched_at":"2026-11-04T16:28:15+00:00","note":null}],"documents":[{"id":68501,"url":"https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-q82v-5wjg-6h57","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-10-20T17:12:54+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"},{"id":68502,"url":"https://www.vulncheck.com/advisories/freerdp-before-3.32.2-heap-buffer-overflow-via-rpc-client-recv-fragment","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}