تم اكتشاف حوالي 25 نقطة ضعف في Zephyr ، نظام RTOS

نسيم عليل

نشر باحثون من شركة NCC Group مؤخرا نتائج تدقيقات مشروع Zephyr ، وهو نظام تشغيل في الوقت الحقيقي (RTOS) ، مصمم لتجهيز الأجهزة وفقًا لمفهوم "إنترنت الأشياء" (IoT). يتم تطوير Zephyr بمشاركة Intel.

يوفر Zephyr مساحة عنوان ظاهري واحدة لجميع العمليات مشترك عالمي (SASOS ، نظام تشغيل مساحة عنوان واحد). يتم دمج الكود الخاص بالتطبيق مع نواة مصممة خصيصًا لتطبيق معين وتشكيل ملف تنفيذي متآلف لتنزيله وتشغيله على أجهزة كمبيوتر معينة.

يتم تحديد جميع موارد النظام في مرحلة التجميع ، مما يقلل من حجم الكود ويزيد من الإنتاجية. يمكن فقط تضمين ميزات kernel المطلوبة لتشغيل التطبيق في صورة النظام.

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

حول نقاط الضعف

كشفت المراجعة عن 25 نقطة ضعف في Zephyr وثغرة واحدة في MCUboot. في المجموع ، تم التعرف عليهم 6 نقاط ضعف في مكدس الشبكة ، 4 في النواة ، 2 في غلاف الأوامر، 5 في معالجات استدعاء النظام ، 5 في نظام USB الفرعي و 3 في آلية تحديث البرنامج الثابت.

تم تعيين مشكلتين على مستوى الخطر الحرج، اثنان: مرتفع ، 9 متوسط ​​، 9 - منخفض و 4 - ليأخذ بعين الاعتبار. مشاكل تأثير حاسم على مكدس IPv4 ومحلل MQTT، بينما ماذاتتضمن البرامج الخطيرة وحدة تخزين USB كبيرة السعة وبرامج تشغيل USB DFU.

في وقت الكشف عن المعلومات ، تم إعداد إصلاحات للثغرات الأمنية الخمسة عشر فقط الأكثر خطورة ، لا تزال هناك مشكلات تم حلها ، مما يؤدي إلى رفض الخدمة أو فشل آليات الحماية الإضافية للنواة.

تم التعرف على ثغرة أمنية تم استغلالها عن بُعد في مكدس IPv4 الخاص بالمنصة ، مما يؤدي إلى تلف الذاكرة عند معالجة حزم ICMP المعدلة بطريقة معينة.

تم العثور على مشكلة خطيرة أخرى في محلل بروتوكول MQTT ، qوهو ناتج عن عدم وجود التحقق المناسب من طول الحقول في الرأس ويمكن أن يؤدي إلى تنفيذ التعليمات البرمجية عن بُعد. تم العثور على مشكلات رفض الخدمة الأقل خطورة في مكدس IPv6 وتطبيق بروتوكول CoAP.

يمكن استغلال مشاكل أخرى محليًا للتسبب في رفض الخدمة أو تنفيذ التعليمات البرمجية على مستوى النواة. ترتبط معظم نقاط الضعف هذه بعدم وجود فحوصات مناسبة لحجج استدعاءات النظام ، ويمكن أن تؤدي إلى كتابة وقراءة مناطق عشوائية من ذاكرة النواة.

تغطي المشكلات أيضًا رمز معالجة مكالمات النظام نفسه: يؤدي الوصول إلى رقم استدعاء نظام سلبي إلى تجاوز عدد صحيح. وحددت النواة أيضًا مشاكل في تنفيذ حماية ASLR (التوزيع العشوائي لمساحة العنوان) وآلية تثبيت ملصقات الكناري على المكدس ، مما يجعل هذه الآليات غير فعالة.

تؤثر العديد من المشكلات على مكدس USB وبرامج التشغيل الفردية. على سبيل المثال ، تتيح لك مشكلة تخزين USB كبير السعة التسبب في تجاوز سعة المخزن المؤقت وتشغيل التعليمات البرمجية على مستوى kernel عند توصيل الجهاز بمضيف مهاجم USB متحكم به.

تسمح لك الثغرة الأمنية في USB DFU ، وهو برنامج لتنزيل البرامج الثابتة الجديدة عبر USB ، بتحميل صورة برنامج ثابت معدلة في فلاش داخلي لمتحكم دقيق دون استخدام التشفير وتجاوز وضع التمهيد الآمن مع التحقق من التوقيع الرقمي للمكون. بالإضافة إلى ذلك ، تمت دراسة كود MCUboot open bootloader ، حيث تم العثور على ثغرة غير خطيرة يمكن أن تؤدي إلى تجاوز سعة المخزن المؤقت عند استخدام بروتوكول الإدارة البسيط (SMP) عبر UART.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.