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

الملخص

بحسب VulDB • 05/08/2026

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

clk: clk-loongson2: إصلاح تجاوز السعة المخزنة (buffer overflow) المحتمل في الوصول إلى عضو المصفوفة المرنة (flexible-array member).

يتم تمييز عضو المصفوفة المرنة `hws` داخل `struct clk_hw_onecell_data` باستخدام سمة `counted_by()`. وهذا يعني أنه عند تخصيص الذاكرة لهذه المصفوفة، يجب تعيين _العداد_، والذي هو في هذه الحالة العضو `num` ضمن الهيكل المرن، إلى الحد الأقصى لعدد العناصر التي يمكن أن تحتويها المصفوفة المرنة، أو عدد أقل من ذلك.

في هذه الحالة، يتم تحديد العدد الإجمالي للعناصر الخاصة بالمصفوفة المرنة بواسطة المتغير `clks_num` عند تخصيص مساحة على الـ heap عبر دالة `devm_kzalloc()`، كما هو موضح أدناه:

289 struct loongson2_clk_provider *clp; ... 296 for (p = data; p->name; p++) 297 clks_num++; 298 299 clp = devm_kzalloc(dev, struct_size(clp, clk_data.hws, clks_num), 300 GFP_KERNEL);

لذلك، يجب تعيين `clp->clk_data.num` إلى قيمة `clks_num` أو أقل، وألا تتجاوز `clks_num`، على عكس الوضع الحالي. وإلا فإنه إذا تمت كتابة بيانات في `clp->clk_data.hws[clks_num]`، فلن يتمكن التزويد (instrumentation) المقدم من المترجم من اكتشاف تجاوز السعة المخزنة، مما يؤدي إلى حدوث خطأ فساد الذاكرة أثناء التشغيل.

تم إصلاح هذه المشكلة عن طريق تعيين `clp->clk_data.num` إلى قيمة `clks_num`.

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

مسؤول

Linux

حجز

19/11/2024

إفشاء

27/12/2024

الاعتدال

تمت الموافقة

إدخال

VDB-289445

EPSS

0.00243

KEV

لا

النشاطات

منخفض جدًا

المصادر

Interested in the pricing of exploits?

See the underground prices here!