PT-2026-49136
CVE-2026-54413
·
تاريخ النشر
2026-06-14
·
تاريخ التحديث
2026-08-10
الوصف من
CVSS 3.1
8.2
عاليةالمقاييسAV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
driftregion iso14229 من الإصدار 14229 حتى 0.9.0
الوصف
يوجد تجاوز سفلي لقيمة عدد صحيح وما يتبعه من قراءة خارج نطاق الصلاحية في الدالة
Handle 0x27 SecurityAccess() داخل الملف iso14229.c. يمكن لمهاجم عن بُعد غير مصدق عليه أن يتسبب في تعطل خادم UDS، وربما يقرأ الذاكرة خارج حدود مخزن الاستقبال (receive buffer) عن طريق إرسال طلب SecurityAccess مكون من بايت واحد بقيمة 0x27 بعد رسالة 0x27 صحيحة التكوين. تحدث هذه المشكلة لأن المعالج يقرأ الدالة الفرعية SecurityAccess من recv buf[1] دون التحقق من أن recv len يساوي 2 على الأقل. ونتيجة لذلك، عندما تكون قيمة recv len تساوي 1، فإن حساب طول بيانات المفتاح عبر عملية طرح غير موقعة (uint16 t)(recv len - UDS 0X27 REQ BASE LEN) يؤدي إلى انخفاض القيمة إلى ما دون 65535. ثم يتم تمرير هذه القيمة كـ args.len إلى دورات الاستدعاء SecAccessValidateKey أو SecAccessRequestSeed، والتي قد تقوم بتكرار أو نسخ تلك الكمية من البيانات من مخزن الاستقبال الذي تبلغ سعته 4 كيلوبايت. يؤثر هذا الخلل على عمليات النشر في وحدات التحكم الإلكترونية (ECU) الخاصة بالسيارات، ووحدات التحكم الصناعية، وأجهزة إنترنت الأشياء (IoT) التي تستخدم المكتبة كخادم UDS عبر وسائل النقل CAN bus و OBD-II و ISO-TP و DoIP في جلسة التشخيص الافتراضية.التوصيات
قم بتحديث إصدارات driftregion iso14229 من 14229 حتى 0.9.0 إلى إصدار ينفذ فحص الحد الأدنى لـ
recv len في الدالة Handle 0x27 SecurityAccess().كحل مؤقت، قم بتقييد الوصول إلى الدالة
Handle 0x27 SecurityAccess() لتقليل مخاطر الاستغلال إلى أدنى حد. وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾