CVE-2026-64229 in Linuxالمعلومات

الملخص

بحسب VulDB • 24/07/2026

في نواة لينكس، تم حل الثغرة التالية:

x86/mm: تعطيل مسح TLB البث (broadcast) عندما يكون PCID معطلاً

يؤدي الإقلاع باستخدام "nopcid" إلى مسح X86_FEATURE_PCID ومنع تعيين CR4.PCIDE إلى القيمة 1. على وحدات المعالجة المركزية من AMD التي تدعم INVLPGB، يظل مسح TLB بالبث مفعلاً.

هناك فحوصتان تحددان ما إذا كان كود ASID العالمي سيعمل وهما mm_global_asid() وconsider_global_asid()، وتعتمدان على ميزة X86_FEATURE_INVLPGB. بمجرد أن يصبح الـ mm نشطاً على أكثر من ثلاث وحدات معالجة مركزية (CPUs)، تقوم consider_global_asid() بتعيين معرف عملية عالمي (global ASID) له، وبعد ذلك يتبع مسار broadcast_tlb_flush() في دالة flush_tlb_mm_range() باستخدام PCID غير صفري. إصدار أمر INVLPGB بمعرف PCID غير صفري بينما لم يتم تعيين CR4.PCIDE يؤدي إلى حدوث خطأ حماية عامة (#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 بالبث (broadcast) تدعم أيضاً PCID، لذا فإن السيناريو الوحيد المثير للقلق هو "nopcid". في هذا الوضع، يتم تعطيل دعم مسح TLB بالبث ببساطة باستخدام دعم تبعية CPUID بجعل X86_FEATURE_INVLPGB معتمداً على X86_FEATURE_PCID.

[ bp: تعديل رسالة الالتزام (commit message). ]

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

19/07/2026

إفشاء

24/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-382964

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!