CVE-2024-57913 in Linuxالمعلومات

الملخص

بحسب VulDB • 31/05/2026

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

usb: gadget: f_fs: إزالة استدعاء WARN_ON في دالة functionfs_bind

يعالج هذا الالتزام مشكلة تتعلق بانخفاض حالة kernel panic التالية عندما يكون خيار panic_on_warn مفعّلاً. ينتج هذا عن الاستخدام غير الضروري لـ WARN_ON في دالة functionfs_bind، مما يؤدي بسهولة إلى السيناريوهات التالية:

1. adb_write في adbd 2. كتابة UDC عبر configfs ================= =====================

->usb_ffs_open_thread() ->UDC write ->open_functionfs() ->configfs_write_iter() ->adb_open() ->gadget_dev_desc_UDC_store() ->adb_write() ->usb_gadget_register_driver_owner ->driver_register() ->StartMonitor() ->bus_add_driver() ->adb_read() ->gadget_bind_driver() ->configfs_composite_bind() ->usb_add_function() ->open_functionfs() ->ffs_func_bind() ->adb_open() ->functionfs_bind() state !=FFS_ACTIVE>

تتم استدعاء عمليات adb_open و adb_read و adb_write من خلال الـ daemon، لكن محاولة ربط الدالة (bind) هي عملية يتم استدعاؤها عن طريق كتابة UDC عبر configfs، مما يفتح الباب أمام احتمال حدوث حالة سباق (race condition) بين المسارين. في هذا السيناريو الخاص بالسباق، يحدث kernel panic بسبب استدعاء WARN_ON من دالة functionfs_bind عندما يكون خيار panic_on_warn مفعّلاً. يصلح هذا الالتزام kernel panic من خلال إزالة استدعاء WARN_ON غير الضروري.

Kernel panic - not syncing: kernel: panic_on_warn set ... [ 14.542395] Call trace:
[ 14.542464] ffs_func_bind+0x1c8/0x14a8
[ 14.542468] usb_add_function+0xcc/0x1f0
[ 14.542473] configfs_composite_bind+0x468/0x588
[ 14.542478] gadget_bind_driver+0x108/0x27c
[ 14.542483] really_probe+0x190/0x374
[ 14.542488] __driver_probe_device+0xa0/0x12c
[ 14.542492] driver_probe_device+0x3c/0x220
[ 14.542498] __driver_attach+0x11c/0x1fc
[ 14.542502] bus_for_each_dev+0x104/0x160
[ 14.542506] driver_attach+0x24/0x34
[ 14.542510] bus_add_driver+0x154/0x270
[ 14.542514] driver_register+0x68/0x104
[ 14.542518] usb_gadget_register_driver_owner+0x48/0xf4
[ 14.542523] gadget_dev_desc_UDC_store+0xf8/0x144
[ 14.542526] configfs_write_iter+0xf0/0x138

If you want to get best quality of vulnerability data, you may have to visit VulDB.

مسؤول

Linux

حجز

19/01/2025

إفشاء

19/01/2025

الاعتدال

تمت الموافقة

إدخال

VDB-292562

EPSS

0.00182

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!