الهندسة العكسية لحركة المرور على حافلة CAN



إشارة



حافلات Raw CAN أصبحت حافلة CAN (شبكة منطقة التحكم) معيارًا في صناعة السيارات: جميع السيارات الجديدة مطلوبة لدعم CAN (منذ عام 2001 في أوروبا ومنذ عام 2008 في الولايات المتحدة الأمريكية). إلى جانب السيارات ، يتم استخدام CAN في مجموعة متنوعة من الأجهزة الأخرى. يعلن مصنعو معدات التشخيص لـ CAN عن استخدامها ، بالإضافة إلى معدات السيارات المختلفة ، في الدراجات النارية ، ورافعات الشوكة ، والسفن ، وقطارات المناجم ، وأحواض الاستحمام ، والطائرات بدون طيار ، وما إلى ذلك. دعونا نرى ما هو CAN.



يتم استخدام العديد من CANs في المركبات ؛ على سبيل المثال ، يوجد في Ford Focus أربعة إطارات من هذا القبيل - ثلاثة إطارات عالية السرعة (500 كيلو بايت في الثانية) للتحكم في المحرك والمكابح ولوحة القيادة وما إلى ذلك ، وواحد منخفض السرعة (125 كيلو بايت في الثانية) للتحكم في الأبواب والمصابيح الأمامية والوسائد الهوائية ونظام الصوت وتكييف الهواء وكل شيء اشياء اخرى. من خلال الاتصال بـ CAN ، يمكنك محاكاة الإشارات من أي جهاز في السيارة - على سبيل المثال ، التحكم في مكيف الهواء من التطبيق على الهاتف أو لف عداد المسافات دون تحريك السيارة. من خلال الاتصال بحافلة Arduino و Relay ، يمكنك التحكم في كاميرا إضافية لوقوف السيارات من لوحة القيادة . حتى الشركات الناشئة التي تعمل على السيارات ذاتية القيادة مثل Voyage، ابدأ في إنشاء النماذج الأولية من خلال الاتصال بـ CAN في سيارة إنتاج عادية وتعلم محاكاة الإشارات من الدواسات وعجلة القيادة.



للاتصال بشبكة CAN في السيارة ، يوجد عادةً موصل OBD-II (التشخيصات الداخلية) بالقرب من عجلة القيادة. تكلف



صورة



محولات OBD2-USB لتوصيل جهاز كمبيوتر بـ CAN من 5 دولارات وتتيح لك تتبع كل حركة المرور داخل السيارة. في بعض الأحيان يكون موصل OBD-II محميًا بـ "جدار حماية للأجهزة" يسمح لك بتلقي الحزم من الأجهزة المتصلة بـ CAN ، ولكنه لا يسمح بإرسال الحزم مرة أخرى إلى الناقل. في هذه الحالة ، يكفي فك الموصل والاتصال بأسلاك CAN بدلاً من ذلك.







تتكون كل حزمة يتم إرسالها على ناقل CAN من معرف جهاز الإرسال (11 أو 29 بت) ، وما يصل إلى 8 بايت من البيانات المرسلة. قد تبدو حركة المرور التي تمر عبر الحافلة عند تشغيل الإشعال كما يلي:







هناك العديد من الأدوات لتحليل حركة مرور CAN ، التجارية والمفتوحة المصدر. تتضمن حزمة can-utils لنظام Linux أداة مساعدة cansnifferتعرض لكل CAN ID فقط آخر حزمة مرسلة ، وبالتالي تسمح لك بتتبع التغييرات في قراءات كل مستشعر على الناقل:







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



يجب أن يكون مفهوما أنه بالتوازي مع إرسال الحزم "المزيفة" ، يستمر إرسال إشارات حقيقية من مستشعر السرعة عبر الحافلة. لكي يُظهر مقياس سرعة الدوران قراءات ملفقة ، من الضروري مراقبة نقل القراءات الحقيقية في الحافلة ، وقمعها بطريقة ما - على سبيل المثال ، فور اكتشاف نقل معرف CAN لمستشعر السرعة ، "قم بإخماد" الحافلة فعليًا عن طريق تقصير خطوط البيانات. هناك طريقة برمجية بحتة لقمع القراءات الحقيقية وهي إرسال الحزم "المزيفة" فور انتقالها ، في حين أن مقياس سرعة الدوران لم يتح له الوقت للرد. على سبيل المثال ، يراقب سكربت shell البسيط التالي الإرسال بمعرف CAN = 0x0C9 ، وبعد ذلك مباشرة ينقل الحزمة المصنعة باستخدام الأداة المساعدة cansendمن نفس can-utils:



كاندمب يمكن 0 | grep "0C9" | أثناء قراءة الخط هل يمكن إرسال can0 0C9 # 8021C0071B101000 ؛ تم ذلك



بالرغم من توصيل جميع الأجهزة الموجودة في السيارة بـ CAN ، إلا أنه لا يتم التحكم في جميع وظائفها عبر CAN. على سبيل المثال ، يتم إرسال إشارات حول درجة الضغط على دواسات الغاز والفرامل إلى CAN في Ford Escape - ولكن يتم استخدام هذه الإشارات فقط بواسطة وحدة ABS ، بينما يتم توصيل مشغلات الخانق والفرامل مباشرة بالدواسات ، متجاوزًا CAN.



من وجهة نظر أمنية ، ليس هناك شك في أي ثغرة أمنية في تقرير السنغافوريين ، لأن الوصول المادي إلى الحافلة مطلوب لنقل حزم CAN "المزيفة". بالإضافة إلى ذلك ، يمكن حماية الحزم بمجموع اختباري - على سبيل المثال ، في سيارات تويوتا ، يجب أن يكون آخر بايت من كل حزمةيساوي مجموع كل السابقة (modulo 256). بالإضافة إلى ذلك ، تستخدم Toyota ترشيح المستلمين للحماية من الحزم غير المرغوب فيها - على سبيل المثال ، تتجاهل التوجيه أكثر من 5٪ من القيمة الحالية.



ومع ذلك ، تمكن الباحثون الأمنيون من الوصول عن بُعد إلى CAN: أولاً ، على مسافة قصيرة - من خلال نقاط الضعف في وحدة Bluetooth المتصلة بنفس الناقل ؛ وبعد ذلكعبر شبكة Sprint الخلوية ، والتي من خلالها تلقت سيارات الدفع الرباعي من العديد من الشركات المصنعة الأمريكية بيانات حركة المرور. حصل الباحثون الذين أظهروا اعتراضًا للسيطرة على سيارة جيب شيروكي من مسافة عدة أميال على مكافأة قدرها 80 ألف دولار من وكالة مشاريع البحوث الدفاعية المتقدمة (DARPA). منذ ذلك الحين ، أعلن العديد من صانعي السيارات عن برامج المكافآت الخاصة بهم واعدة بدفع 1500 دولار أو أكثر عن كل ثغرة تم اكتشافها. وبالتالي ، لا يمكن للهندسة العكسية لحركة المرور على حافلة CAN أن تضيف فقط إمكانيات جديدة لسيارتك ، بل يمكنها أيضًا تجديد محفظتك بشكل كبير






All Articles