CVE-2026-64229 in Linux情報

要約

〜によって VulDB • 2026年07月24日

Linuxカーネルにおいて、以下の脆弱性が修正されました。

x86/mm: PCIDが無効化されている場合のブロードキャストTLBフラッシュを無効化する

「nopcid」オプションで起動するとX86_FEATURE_PCIDがクリアされ、CR4.PCIDEに1を設定しなくなります。INVLPGBをサポートするAMD CPUでは、ブロードキャストによるTLBフラッシングは有効なままになります。

グローバルASIDコードの実行可否を決定するmm_global_asid()とconsider_global_asid()という2つのチェックがあり、これらはX86_FEATURE_INVLPGB機能に依存しています。あるmmが3つ以上のCPUでアクティブになると、consider_global_asid()はそれにグローバルASIDを割り当てます。その後flush_tlb_mm_range()は非ゼロのPCIDを使用してbroadcast_tlb_flush()パスを取ります。CR4.PCIDEが設定されていない状態で非ゼロのPCIDを持つINVLPGBを発行すると#GP(一般保護例外)が発生します:

Oops: general protection fault, kernel NULL pointer dereference 0x1: 0000 [#1] SMP NOPTI
CPU: 158 UID: 0 PID: 3119 Comm: snap Not tainted 7.1.0-rc3 #1 PREEMPT(full) Hardware name: ... RIP: 0010:broadcast_tlb_flush Code: ... 89 da 48 83 c8 07 <0f> 01 fe eb 08 cc cc cc ... Call Trace: <TASK> flush_tlb_mm_range ptep_clear_flush wp_page_copy ? _raw_spin_unlock __handle_mm_fault handle_mm_fault do_user_addr_fault exc_page_fault asm_exc_page_fault

ブロードキャストTLB無効化をサポートするすべてのプロセッサはPCIDサポートも持っているので、問題となるのは「nopcid」シナリオのみです。この状況では、X86_FEATURE_INVLPGBをX86_FEATURE_PCIDに依存させることでCPUID依存関係サポートを使用してブロードキャストTLBサポートを無効化します。

[ bp: コミットメッセージを整える ]

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

責任者

Linux

予約する

2026年07月19日

モデレーション

承諾済み

エントリ

VDB-382964

EPSS

0.00166

アクティビティ

低い

ソース

Do you want to use VulDB in your project?

Use the official API to access entries easily!