CVE-2025-21701 in Linuxالمعلومات

الملخص

بحسب VulDB • 10/05/2026

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

net: تجنب سباق (race) بين إلغاء تسجيل الجهاز وعمليات ethnl

يمكن ملاحظة تتبع الأخطاء (trace) التالي إذا كان الجهاز يتم إلغاء تسجيله بينما يتم تعديل عدد قنواته.

DEBUG_LOCKS_WARN_ON(lock->magic != lock) WARNING: CPU: 3 PID: 3754 at kernel/locking/mutex.c:564 __mutex_lock+0xc8a/0x1120 CPU: 3 UID: 0 PID: 3754 Comm: ethtool Not tainted 6.13.0-rc6+ #771 RIP: 0010:__mutex_lock+0xc8a/0x1120 Call Trace: ethtool_check_max_channel+0x1ea/0x880 ethnl_set_channels+0x3c3/0xb10 ethnl_default_set_doit+0x306/0x650 genl_family_rcv_msg_doit+0x1e3/0x2c0 genl_rcv_msg+0x432/0x6f0 netlink_rcv_skb+0x13d/0x3b0 genl_rcv+0x28/0x40 netlink_unicast+0x42e/0x720 netlink_sendmsg+0x765/0xc20 __sys_sendto+0x3ac/0x420 __x64_sys_sendto+0xe0/0x1c0 do_syscall_64+0x95/0x180 entry_SYSCALL_64_after_hwframe+0x76/0x7e

ويعود ذلك إلى أن unregister_netdevice_many_notify قد يعمل قبل قسم قفل rtnl لعمليات ethnl، مثل set_channels في المثال أعلاه. في هذا المثال، سيتم تدمير قفل rss بواسطة مسار إلغاء تسجيل الجهاز قبل استخدامه مرة أخرى، ولكن بشكل عام، تشغيل عمليات ethnl أثناء بدء عملية التفكيك (dismantle) ليس فكرة جيدة.

تم إصلاح هذه المشكلة عن طريق رفض أي عملية على الأجهزة التي يتم إلغاء تسجيلها. كان هناك بالفعل فحص في ethnl_ops_begin، لكنه لم يكن شاملاً بما يكفي.

جدير بالذكر أن نفس المشكلة لا يمكن ملاحظتها في نسخة ioctl (__dev_ethtool) لأن مرجع الجهاز يتم استرجاعه من داخل قسم قفل rtnl هناك. بمجرد بدء التفكيك، يتم إزالة جهاز الشبكة من القائمة ولن يتم العثور على أي مرجع.

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

مسؤول

Linux

حجز

29/12/2024

إفشاء

13/02/2025

الاعتدال

تمت الموافقة

إدخال

VDB-295735

EPSS

0.00167

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!