أمن البرامج الثابتة وتحديثات OTA للتصنيع والأتمتة
في خط الأتمتة، سطح الهجوم الحقيقي ليس منطق البرنامج الثابت، بل الصورة غير الموقّعة التي يومضها مقاول عبر USB وعملية الكتابة عبر Modbus غير الموثّقة التي لم يسجّلها أحد. نحن نؤمّن الجهاز نفسه: جذر ثقة عتادي محروق في eFuses، ومسار OTA لا يقبل سوى الصور المشفّرة الموقّعة مزدوجاً، وطبقة أوامر تثبت من أصدر كل قيمة ضبط. يبقى الخط يعمل، لكنه يكفّ عن الوثوق بأي شيء لا يستطيع التحقق منه تشفيرياً.
Challenges specific to Manufacturing & Automation
برامج ثابتة غير موقّعة يومضها أي شخص يملك كابلاً
بدون جذر ثقة عتادي يشغّل محمّل الإقلاع أي شيء موجود في الفلاش، فيمكن لحاسوب مقاول أو وحدة مستبدلة حقن برنامج ثابت مارق يبدو مطابقاً للإنتاج على شاشة HMI.
صور OTA تنتقل وتُخزَّن بنص واضح
حين تفتقر قناة التحديث إلى التحقق من التوقيع والتشفير أثناء التخزين، يستطيع مهاجم على شبكة المصنع التقاط الصورة أو استنساخها أو استبدالها ودفع منطق خبيث إلى كل متحكم مماثل على الخط.
التراجع يعيد فتح ثغرات مُصحَّحة
الجهاز الذي يقبل أي صورة موقّعة بصحة يمكن إرجاعه إلى إصدار معروف بثغرته، فيُلغي تصحيحاً أمنياً بينما يجتاز كل فحوص التوقيع والإصدار التي يراها المشغّل.
كتابات قيم الضبط بلا أصل موثّق
تتيح بروتوكولات التشغيل المسطّحة لأي مضيف على المقطع كتابة أمر سرعة أو وصفة أو مشغّل، فيمكن لمحطة هندسة مخترقة قيادة العملية دون أي إثبات لمن أصدر التغيير.
لا سجل يكشف العبث يبيّن من غيّر ماذا
حين لا تُسجَّل تحديثات البرامج الثابتة وتعديلات الإعدادات والأوامر المميّزة بحماية للهوية والسلامة، يعجز فريق الطب الجنائي بعد حادثة عن إعادة بناء التسلسل أو الوثوق بالسجلات الباقية.
المتحكمات على شبكة مسطّحة واحدة غير موثوقة
بلا حدود مناطق وقنوات يصل حاسوب مكتبي مصاب إلى وحدات PLC والعقد الطرفية مباشرة، فتعرّض بيانات اعتماد مسروقة واحدة الخلية بأكملها بدلاً من محطة تجميع مقطّعة واحدة.
How GizanTech solves them
- جذر ثقة عتادي بـ eFuse (Secure Boot v2). نحرق ملخص المفتاح العام RSA-3072 في eFuses لـ ESP32 ونفعّل Secure Boot v2 ليتحقق محمّل الإقلاع في ROM تشفيرياً من كل مرحلة؛ فتتوقف الصورة المعبوث بها أو غير الموقّعة عند الإقلاع بدل التشغيل، محقّقة سلامة البرنامج الثابت IEC 62443-4-2 CR 3.4.
- خط أنابيب OTA موقّع ومشفّر بـ AES-XTS. نوقّع كل إصدار بمفتاح غير متصل في HSM أو رمز Yubico، ونشفّر الفلاش بـ AES-256-XTS، ونرسل التحديثات عبر TLS موثّق مزدوجاً، فلا يقبل الجهاز إلا صورة موقّعة مزدوجاً ويبقى الملف الثنائي عديم الفائدة إن اعتُرض أو فُرّغ.
- فرض منع التراجع أحادي الاتجاه. نربط كل تحديث OTA بعدّاد إصدار آمن في eFuse يتزايد فقط، فيرفض محمّل الإقلاع أي صورة إصدارها الأمني أدنى من الحد الحالي للجهاز، مانعاً هجمات التراجع إلى نسخة مصابة وفق IEC 62443-4-2 CR 3.10.
- قناة أوامر موثّقة بالتحكم بالأدوار RBAC. نغلّف كتابات قيم الضبط والمشغّلات بمصادقة لكل رسالة (حمولات موقّعة/HMAC أو شهادات عميل mTLS) مع تفويض قائم على الأدوار، فيرفض المتحكم أي أمر يفتقر إلى هوية مشغّل أو مهندس صالحة، محقّقاً CR 1.1/1.2 و CR 2.1.
- تسجيل تدقيقي يكشف العبث إلى SIEM. نُصدر سجلات مسلسلة بالتجزئة ومختومة زمنياً لكل تحديث برنامج ثابت وتغيير إعداد وأمر مميّز عبر syslog/TLS إلى SIEM المصنع، فتكون كل مدخلة محمية السلامة ويكسر أي سطر محذوف أو معدّل السلسلة ويطلق تنبيهاً.
- تجزئة الشبكة بالمناطق والقنوات. نصمّم الجهاز ليعمل خلف قناة محددة بجدار ناري يرفض افتراضياً، وشبكة OT VLAN مخصصة، وحركة MQTT/TLS صاعدة عبر وسيط بدل التعريض المباشر، مطبّقين تقسيم IEC 62443-3-3 فلا يصل مضيف IT مخترق إلى المتحكم.
| الضابط الأمني | الآلية | مرجع IEC 62443 | الهجوم / الخطر الممنوع |
|---|---|---|---|
| Secure Boot | توقيع RSA-3072 يتحقق منه ROM مقابل ملخص مفتاح محروق في eFuse | 62443-4-2 CR 3.4 (سلامة البرنامج الثابت) | برنامج ثابت مارق أو غير موقّع يومض عبر USB أو وحدة مستبدلة |
| OTA موقّع ومشفّر | توقيع إصدار بمفتاح غير متصل مع تشفير فلاش AES-256-XTS عبر TLS مزدوج | 62443-4-2 CR 3.4 / CR 4.1 (السرية) | اعتراض الصورة أو استنساخها أو استبدالها على شبكة المصنع |
| تجزئة الشبكة | شبكة OT VLAN خلف قناة ترفض افتراضياً مع حركة صاعدة عبر وسيط | 62443-3-3 SR 5.1 / SR 5.2 (المناطق والقنوات) | حركة جانبية من مضيف IT أو مكتبي مخترق |
| تفويض الأوامر | HMAC لكل رسالة / شهادات عميل mTLS مع تحكم بالوصول قائم على الأدوار | 62443-4-2 CR 1.1، CR 1.2، CR 2.1 | كتابات قيم ضبط أو وصفات أو مشغّلات غير موثّقة |
| التسجيل التدقيقي | سجلات syslog/TLS مسلسلة بالتجزئة ومختومة زمنياً تُبثّ إلى SIEM المصنع | 62443-4-2 CR 2.8 / CR 2.9 (الأحداث القابلة للتدقيق) | عبث صامت وخط زمني غير قابل لإعادة البناء بعد الحادثة |
| منع التراجع | عدّاد إصدار آمن أحادي الاتجاه في eFuse يفحصه محمّل الإقلاع قبل التبديل | 62443-4-2 CR 3.10 (أدنى وظيفية / التراجع) | التراجع إلى إصدار برنامج ثابت معروف بثغرته |
Go deeper
Firmware Security & OTA for other industries
Frequently asked questions
هل يبطّئ Secure Boot v2 خط الإنتاج أو زمن الإقلاع؟
ليس بشكل ملموس. يضيف التحقق من التوقيع عشرات الميلي ثانية عند التشغيل فقط، لا أثناء العمل، فلا يتأثر زمن الدورة. المقايضة تشغيلية: بمجرد حرق eFuses يُقفل الجهاز دائماً على مفتاحك، لذا ندمج تزويد المفتاح في خطوة الإيماض في نهاية الخط لا في الميدان.
هل يمكننا دفع تحديثات OTA لمتحكمات لا يمكن إيقافها أثناء الوردية؟
نعم. نستخدم أقساماً من نوع A/B بحيث تُكتب الصورة الجديدة الموقّعة والمشفّرة ويُتحقق منها في الخلفية، ثم يُقيَّد التبديل ليُطبَّق فقط حين يُبلّغ المتحكم عن حالة خمول أو أمان، مع تراجع تلقائي إلى القسم السابق إن فشل الفحص الذاتي بعد الإقلاع.
كيف يُربط هذا بـ IEC 62443 لتدقيق أو استبيان أمني من عميل؟
كل ضابط يُربط بمتطلبات مكوّن محددة: Secure Boot وOTA الموقّع بـ CR 3.4، ومنع التراجع بـ CR 3.10، ومصادقة الأوامر بـ CR 1.1 و1.2، والتسجيل التدقيقي بـ CR 2.8 و2.9. نسلّم مصفوفة ربط الضوابط بالمتطلبات وأدلة الاختبار ليجيب فريقك على الاستبيان بدل عكس هندسة البرنامج الثابت.
ماذا يحدث للجهاز إن استبدل مهاجم شريحة الفلاش أو فرّغها؟
يربط تشفير الفلاش AES-256-XTS المحتوى بمفتاح محفوظ في eFuses لا يغادر الشريحة أبداً، فتكون صورة الفلاش المفرّغة أو المزروعة نصاً مشفّراً ولن تقلع. ومع Secure Boot، لا قراءة البرنامج الثابت ولا حقن نسخة معدّلة منه ممكنان بلا المفتاح المدمج في الرقاقة.
هل يمكنكم تطبيق هذا على أسطول منشور قائم، أم التصاميم الجديدة فقط؟
كلاهما، بقيود. تحصل التصاميم الجديدة على حرق eFuses وتفعيل التشفير عند التصنيع لحماية كاملة. للأسطول المنشور يمكننا تفعيل Secure Boot وOTA الموقّع على وحدات ما زالت eFuses فيها غير محروقة عبر تحديث آمن لمرة واحدة؛ أما الوحدات في حالة غير آمنة فتحتاج عادة تدخلاً مادياً مضبوطاً لتزويد جذر الثقة بأمان.
هل تكسر الأوامر الموثّقة تكامل Modbus أو MQTT القائم لدينا؟
نضيف طبقة المصادقة والتفويض دون التخلي عن بروتوكولاتك: تنتقل الحركة الصاعدة إلى TLS موثّق مزدوجاً بحمولات موقّعة، بينما يبقى Modbus القديم خلف حد القناة ويُمرَّر عبر العقدة المؤمّنة، فيستمر تكامل PLC وSCADA بالعمل بينما ينتقل حد الثقة إلى الجهاز.