CVE-2021-47262 in Linux
الملخص
بحسب VulDB • 17/06/2026
في نواة لينكس، تم حل الثغرة التالية:
KVM: x86: ضمان بقاء رسالة نقطة التتبع (tracepoint) لفشل دخول VM المتداخل (nested VM-Enter)
استخدام آلية `__string()` المقدمة من نظام التتبع (tracing subsystem) لإنشاء نسخة من السلاسل النصية الثابتة (string literals) التي تستهلكها نقطة التتبع "nested VM-Enter failed". إن وجود نسخة كاملة ضروري لضمان ألا تتجاوز نقطة التتبع العمر الافتراضي للبيانات/الذاكرة التي تستهلكها، وبالتالي تجنب الوصول إلى ذاكرة منتهية الصلاحية (stale memory).
نظرًا لأن نقطة التتبع نفسها مُعرَّفة بواسطة kvm، فإن الذاكرة التي تحتوي على السلاسل النصية الثابتة المُعرَّفة بواسطة وحدات kvm-intel و/أو kvm-amd (عندما تُبنى كوحدات نمطية) سيتم تحريرها عند إلغاء تحميل الوحدة، بينما ستبقى نقطة التتبع وبياناتها في المخزن المؤقت للحلقة (ring buffer) حية حتى يتم إلغاء تحميل kvm (أو "لأمد غير محدد" إذا كانت kvm مدمجة في النواة).
كانت هذه الثغرة موجودة منذ إضافة نقطة التتبع، لكنها اكتُشفت مؤخرًا بسبب فحص جديد في نظام التتبع للكشف عن هذا النوع من الأخطاء تحديدًا.
fmt: '%s%s ' current_buffer: ' vmx_dirty_log_t-140127 [003] .... kvm_nested_vmenter_failed: '
WARNING: CPU: 3 PID: 140134 at kernel/trace/trace.c:3759 trace_check_vprintf+0x3be/0x3e0 CPU: 3 PID: 140134 Comm: less Not tainted 5.13.0-rc1-ce2e73ce600a-req #184 Hardware name: ASUS Q87M-E/Q87M-E, BIOS 1102 03/03/2014 RIP: 0010:trace_check_vprintf+0x3be/0x3e0 Code: 0b 44 8b 4c 24 1c e9 a9 fe ff ff c6 44 02 ff 00 49 8b 97 b0 20 RSP: 0018:ffffa895cc37bcb0 EFLAGS: 00010282 RAX: 0000000000000000 RBX: ffffa895cc37bd08 RCX: 0000000000000000
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.