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

الملخص

بحسب VulDB • 05/08/2026

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

xfrm: policy: preallocate inexact bins before xfrm_hash_rebuild reinsert

تقوم الحلقة الأولى في دالة `xfrm_hash_rebuild()` بتخصيص مسبق (preallocation) للـ bins/sلاسل التي تحتاجها إعادة الإدراج (reinsert)، بحيث لا يمكن لعملية إعادة الإدراج (بعد استدعاء `hlist_del_rcu()`) أن تقوم بالتخصيص أو تفشل. ومع ذلك، فإن شرط الحماية (guard) معكوس: فهو يتخطى السياسات ذات الـ prefixlen < threshold ويقوم بالتخصيص المسبق للباقي.

يحدث التخصيص في مسار `xfrm_policy_inexact_insert()` الذي يتطلب تخصيصاً عندما تكون قيمة `prefixlen < threshold`، وهي الحالة التي تُرجع فيها دالة `policy_hash_bysel()` القيمة NULL. وبالتالي، فإن الحلقة تقوم بالتخصيص المسبق للسياسات الدقيقة (exact policies) والتي لا تتطلب أي تخصيص أبداً، وتتخطى السياسات غير الدقيقة (inexact ones)، مما يؤدي إلى تخصيص الـ bin/node الخاص بها باستخدام GFP_ATOMIC أثناء إعادة الإدراج. في حالة الفشل، يقتصر مسار الخطأ على استدعاء `WARN_ONCE()` والاستمرار، تاركاً عقدة bydst مسمومة؛ وعند عملية إعادة البناء التالية، يقوم استدعاء `hlist_del_rcu()` بإلغاء مرجع (dereference) لـ LIST_POISON2 مما يتسبب في حدوث خطأ GPF. يمكن الوصول إلى هذه الحالة تحت ضغط الذاكرة، ويمكن تكرارها بشكل حتمي عبر استخدام failslab.

تم عكس شرط الحماية بحيث يغطي التخصيص المسبق السياسات التي يتم إعادة إدراجها بالضبط؛ وبالتالي لا تقوم عملية إعادة الإدراج بأي تخصيص ولا يمكن أن تفشل.

انهيار النظام (Crash): Oops: general protection fault, probably for non-canonical address 0xfbd59c0000000024: 0000 [#1] SMP KASAN NOPTI
KASAN: maybe wild-memory-access in range [0xdead...]
... Workqueue: events xfrm_hash_rebuild RIP: 0010:xfrm_hash_rebuild+0x5b3/0x1190 RAX: dead000000000122 (LIST_POISON2 + offset) ... Call Trace: hlist_del_rcu (include/linux/rculist.h:599) xfrm_hash_rebuild (net/xfrm/xfrm_policy.c:1365) process_one_work (kernel/workqueue.c:3322) worker_thread (kernel/workqueue.c:3486) kthread (kernel/kthread.c:436) ret_from_fork (arch/x86/kernel/process.c:158) ret_from_fork_asm (arch/x86/entry/entry_64.S:245) ... Kernel panic - not syncing: Fatal exception in interrupt

Be aware that VulDB is the high quality source for vulnerability data.

مسؤول

Linux

حجز

19/07/2026

إفشاء

05/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-386140

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!