CVE-2026-121402: 
NixOS Análise e mitigação de vulnerabilidades

Visão geral

CVE-2026-121402 is a NULL pointer dereference vulnerability in FreeRDP that allows a malicious RDP server to crash xfreerdp clients by sending a zero-width RDPGFX ResetGraphics PDU. All FreeRDP versions before 3.32.2 are affected; version 3.32.2 contains the fix. The vulnerability was published on November 3, 2026, with the patch available in the same release. It carries a CVSS v3.1 score of 6.5 (Medium) and a CVSS v4.0 score of 7.1 (High) (GitHub Advisory, FreeRDP Advisory).

Detalhes técnicos

The root cause is improper input validation (CWE-20) combined with a NULL pointer dereference (CWE-476) in FreeRDP's GDI and RDPGFX handling code. The RDPGFX client parser in channels/rdpgfx/client/rdpgfx_main.c rejects dimensions above MAX_SURFACE_SIZE but does not reject zero-width values. When a zero-width RDPGFX_RESET_GRAPHICS_PDU is received, gdi_ResetGraphics commits the zero dimensions and calls gdi_resize_ex(0, h), which frees and nulls gdi->primary before attempting to allocate a replacement; the zero-width allocation via gdi_CreateCompatibleBitmap fails (returning NULL from calloc(0, h)), leaving gdi->primary as NULL without terminating the session. A subsequent ordinary bitmap update reaching gdi_Bitmap_Paint dereferences context->gdi->primary->hdc, causing a SIGSEGV crash (FreeRDP Advisory).

Impacto

Successful exploitation results in a denial-of-service condition limited to the xfreerdp client process — the client crashes with a SIGSEGV (exit code 139), terminating the user's RDP session. There is no demonstrated impact on confidentiality or integrity, and no attacker-controlled write or code execution has been shown. The scope is confined to the vulnerable client; no lateral movement or data exfiltration capability has been identified (FreeRDP Advisory, GitHub Advisory).

Explorabilidade

No public proof-of-concept exploit code has been released, and there is no evidence of in-the-wild exploitation at this time. The EPSS score is 0.0, reflecting a very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires user interaction — a victim must connect to a malicious RDP server — but no attacker privileges are required on the server side (GitHub Advisory, FreeRDP Advisory).

Etapas de exploração

  1. Set up a malicious RDP server: The attacker deploys a custom or modified RDP server capable of sending arbitrary RDPGFX PDUs, using FreeRDP's server-side API or a custom implementation after completing TLS/NLA capability exchange with the client.
  2. Lure the victim to connect: The attacker tricks a Linux user running xfreerdp into connecting to the malicious server (e.g., via phishing, a malicious link, or a compromised RDP gateway).
  3. Complete capability exchange: Allow the normal RDP handshake and RDPGFX capability negotiation to complete so the client enters the graphics pipeline state.
  4. Send zero-width ResetGraphics PDU: Transmit an RDPGFX_CMDID_RESETGRAPHICS PDU with width=0 (and any non-zero height, e.g., 768) and monitorCount=0. This causes gdi_resize_ex to free and null gdi->primary without successfully recreating it.
  5. Send a normal bitmap update: Transmit a valid bitmap update (e.g., a 1×1 pixel BITMAP_UPDATE). The client's gdi_Bitmap_Paint function dereferences the now-NULL gdi->primary->hdc, triggering a SIGSEGV and crashing the xfreerdp client process (FreeRDP Advisory).

Indicadores de compromisso

  • Logs: FreeRDP client logs showing reset error 1359 or similar RDPGFX ResetGraphics error codes immediately before a crash; log entries referencing gdi->primary=(nil) or primary_buffer=(nil) after a resize operation.
  • Process: xfreerdp process terminating with exit code 139 (SIGSEGV); crash stack trace resolving to gdi_Bitmap_Paint in a backtrace or core dump.
  • Network: RDP traffic from an unexpected or untrusted server IP containing an RDPGFX ResetGraphics PDU with zero-width dimensions followed immediately by a bitmap update PDU (FreeRDP Advisory).

Mitigação e soluções alternativas

Update FreeRDP to version 3.32.2 or later, which rejects zero desktop dimensions before invoking the graphics reset callback. As a workaround until patching is possible, avoid connecting xfreerdp clients to untrusted or unknown RDP servers, and restrict RDP connections to known, trusted servers only. The suggested code-level remediation is to reject zero-width/height values in the RDPGFX handler and to preserve the old primary display until a replacement is successfully created, or to close the session if the display state cannot be restored (FreeRDP Advisory, GitHub Advisory).

Recursos adicionais

Status correto da distribuição Linux

Corrija a disponibilidade entre as principais distribuições Linux e seus lançamentos.

Debian

Afetado

bookworm

freerdp2

Afetado

sid

freerdp3: 3.32.2+dfsg-1

Fixo

trixie

freerdp3

Afetado

Ubuntu

Desconhecido

bionic (esm-apps)

freerdp

Desconhecido

bionic (esm-infra)

freerdp2

Desconhecido

devel

freerdp3

Desconhecido

focal (esm-infra)

freerdp2

Desconhecido

jammy

freerdp2

Desconhecido

noble

freerdp2

Desconhecido

noble (esm-apps)

freerdp2

Desconhecido

resolute

freerdp3

Desconhecido

RHEL / CentOS

Fixo

RHEL 8

freerdp.src

Afetado

RHEL 9

freerdp.src

Afetado

RHEL 10

freerdp-2:3.32.2-1.el10_2.src

Fixo

Origem: Este relatório foi gerado usando IA

Relacionado NixOS Vulnerabilidades:

CVE ID

Gravidade

Pontuação

Tecnologias

Nome do componente

Exploit CISA KEV

Tem correção

Data de publicação

CVE-2026-121964HIGH8.7
  • NixOS logoNixOS
  • freerdp3
NãoSimNov 04, 2026
CVE-2026-121960HIGH8.7
  • NixOS logoNixOS
  • freerdp2
NãoSimNov 04, 2026
CVE-2026-121963HIGH8.2
  • NixOS logoNixOS
  • freerdp
NãoSimNov 04, 2026
CVE-2026-121961HIGH8.2
  • NixOS logoNixOS
  • freerdp
NãoSimNov 04, 2026
CVE-2026-121962HIGH7.2
  • NixOS logoNixOS
  • freerdp2
NãoSimNov 04, 2026

Avaliação Gratuita de Vulnerabilidades

Avalie a sua postura de segurança na nuvem

Avalie suas práticas de segurança em nuvem em 9 domínios de segurança para avaliar seu nível de risco e identificar lacunas em suas defesas.

Avaliação de solicitação

Recursos adicionais da Wiz

Marque uma demonstração personalizada

Pronto para ver a Wiz em ação?

"A melhor experiência do usuário que eu já vi, fornece visibilidade total para cargas de trabalho na nuvem."
David EstlickCISO
"A Wiz fornece um único painel de vidro para ver o que está acontecendo em nossos ambientes de nuvem."
Adam FletcherDiretor de Segurança
"Sabemos que se a Wiz identifica algo como crítico, na verdade é."
Greg PoniatowskiChefe de Gerenciamento de Ameaças e Vulnerabilidades