CVE-2026-121402: 
NixOS 脆弱性分析と緩和策

概要

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).

技術的詳細

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).

影響

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).

利用可能性

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).

エクスプロイテーションのステップ

  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).

妥協の兆候

  • 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).

緩和策と回避策

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).

追加リソース

Linuxディストリビューションの修正状況

主要なLinuxディストリビューションとそのリリース間での可用性を修正しましょう。

Debian

影響

bookworm

freerdp2

影響

sid

freerdp3: 3.32.2+dfsg-1

修正済

trixie

freerdp3

影響

Ubuntu

不明

bionic (esm-apps)

freerdp

不明

bionic (esm-infra)

freerdp2

不明

devel

freerdp3

不明

focal (esm-infra)

freerdp2

不明

jammy

freerdp2

不明

noble

freerdp2

不明

noble (esm-apps)

freerdp2

不明

resolute

freerdp3

不明

RHEL / CentOS

修正済

RHEL 8

freerdp.src

影響

RHEL 9

freerdp.src

影響

RHEL 10

freerdp-2:3.32.2-1.el10_2.src

修正済

ソース: この報告書はAIを用いて作成されました

関連 NixOS 脆弱性:

CVE ID

重大度

スコア

テクノロジー

コンポーネント名

CISA KEVのエクスプロイト

修正あり

出版日

CVE-2026-121964HIGH8.7
  • NixOS logoNixOS
  • freerdp3
いいえはいNov 04, 2026
CVE-2026-121960HIGH8.7
  • NixOS logoNixOS
  • freerdp2
いいえはいNov 04, 2026
CVE-2026-121963HIGH8.2
  • NixOS logoNixOS
  • freerdp
いいえはいNov 04, 2026
CVE-2026-121961HIGH8.2
  • NixOS logoNixOS
  • freerdp
いいえはいNov 04, 2026
CVE-2026-121962HIGH7.2
  • NixOS logoNixOS
  • freerdp2
いいえはいNov 04, 2026

無料脆弱性評価

クラウドセキュリティの姿勢をベンチマークしましょう

9つのセキュリティ領域にわたるクラウドセキュリティの実践を評価し、リスクレベルをベンチマークし、防御のギャップを特定しましょう。

評価のリクエスト

Wizのその他のリソース

パーソナライズされたデモを見る

実際に Wiz を見てみませんか?​

"私が今まで見た中で最高のユーザーエクスペリエンスは、クラウドワークロードを完全に可視化します。"
デビッド・エストリックCISO (最高情報責任者)
"Wiz を使えば、クラウド環境で何が起こっているかを 1 つの画面で確認することができます"
アダム・フレッチャーチーフ・セキュリティ・オフィサー
"Wizが何かを重要視した場合、それは実際に重要であることを私たちは知っています。"
グレッグ・ポニャトフスキ脅威および脆弱性管理責任者