CrowdStrike يكشف السبب الجذري لانقطاع النظام العالمي
قامت شركة الأمن السيبراني CrowdStrike نشرت تحليل السبب الجذري الخاص به يوضح بالتفصيل تعطل تحديث برنامج Falcon Sensor الذي أدى إلى شل ملايين الأجهزة التي تعمل بنظام Windows على مستوى العالم.
تم إرجاع حادثة “ملف القناة 291″، كما تم تسليط الضوء عليه في الأصل في المراجعة الأولية لما بعد الحادث (PIR)، إلى مشكلة التحقق من صحة المحتوى التي نشأت بعد تقديم نوع قالب جديد لتمكين الرؤية واكتشاف تقنيات الهجوم الجديدة التي إساءة استخدام الأنابيب المسماة وآليات الاتصال بين العمليات (IPC) الأخرى في Windows.
على وجه التحديد، يتعلق الأمر بتحديث محتوى به مشكلات تم نشره عبر السحابة، واصفًا إياه بأنه “التقاء” للعديد من المشكلات التي أدت إلى حدوث عطل: عدم التطابق بين المدخلات الـ 21 التي تم تمريرها إلى مدقق المحتوى عبر نوع قالب IPC بدلاً من نوع قالب IPC. 20 تم توفيرها لمترجم المحتوى.
قالت CrowdStrike إن عدم تطابق المعلمة لم يتم اكتشافه أثناء “الطبقات المتعددة” من عملية الاختبار، ويرجع ذلك جزئيًا إلى استخدام معايير مطابقة أحرف البدل للإدخال الحادي والعشرين أثناء الاختبار وفي مثيلات قالب IPC الأولية التي تم تسليمها بين مارس وأبريل 2024.
بمعنى آخر، كان الإصدار الجديد من ملف القناة 291 الذي تم دفعه في 19 يوليو 2024، هو أول مثيل لقالب IPC يستخدم حقل معلمة الإدخال الحادي والعشرين. إن عدم وجود حالة اختبار محددة لمعايير مطابقة غير أحرف البدل في الحقل الحادي والعشرين يعني أنه لم يتم وضع علامة عليها إلا بعد شحن محتوى الاستجابة السريعة إلى المستشعرات.
وقالت الشركة: “إن أجهزة الاستشعار التي تلقت الإصدار الجديد من ملف القناة 291 الذي يحمل المحتوى الذي به مشكلات، تعرضت لمشكلة قراءة كامنة خارج الحدود في مترجم المحتوى”.
“في إخطار IPC التالي من نظام التشغيل، تم تقييم مثيلات قالب IPC الجديدة، مع تحديد مقارنة مقابل قيمة الإدخال الحادية والعشرين. توقع مترجم المحتوى 20 قيمة فقط. لذلك، أدت محاولة الوصول إلى القيمة الحادية والعشرين إلى نتيجة غير متوقعة. -قراءة حدود الذاكرة بعد نهاية مصفوفة بيانات الإدخال مما أدى إلى تعطل النظام.”
إلى جانب التحقق من عدد حقول الإدخال في نوع القالب في وقت تجميع المستشعر لمعالجة المشكلة، قالت CrowdStrike إنها أضافت أيضًا عمليات فحص حدود مصفوفة الإدخال في وقت التشغيل إلى مترجم المحتوى لمنع قراءات الذاكرة خارج الحدود وتصحيح عدد المدخلات المقدمة بواسطة نوع قالب IPC.
وأشار إلى أن “فحص الحدود المضافة يمنع مترجم المحتوى من إجراء وصول خارج الحدود إلى مصفوفة الإدخال وتعطل النظام”. “يضيف الفحص الإضافي طبقة إضافية من التحقق من صحة وقت التشغيل بحيث يتطابق حجم مصفوفة الإدخال مع عدد المدخلات المتوقعة بواسطة محتوى الاستجابة السريعة.”
علاوة على ذلك، قالت CrowdStrike إنها تخطط لزيادة تغطية الاختبار أثناء تطوير نوع القالب لتشمل حالات اختبار لمعايير مطابقة غير أحرف البدل لكل حقل في جميع أنواع القوالب (المستقبلية).
من المتوقع أيضًا أن تعمل بعض تحديثات المستشعر على حل الثغرات التالية –
- يتم تعديل أداة التحقق من صحة المحتوى لإضافة عمليات فحص جديدة للتأكد من أن المحتوى الموجود في مثيلات القالب لا يتضمن معايير مطابقة تتطابق مع حقول أكثر من تلك التي يتم تقديمها كمدخلات إلى مترجم المحتوى
- يتم تعديل أداة التحقق من المحتوى للسماح فقط بمعايير مطابقة أحرف البدل في الحقل الحادي والعشرين، مما يمنع الوصول خارج الحدود في المستشعرات التي توفر 20 مدخلاً فقط
- تم تحديث نظام تكوين المحتوى بإجراءات اختبار جديدة لضمان اختبار كل مثيل قالب جديد، بغض النظر عن حقيقة أنه تم اختبار مثيل القالب الأولي باستخدام نوع القالب عند الإنشاء
- تم تحديث نظام تكوين المحتوى بطبقات نشر إضافية وفحوصات قبول
- تم تحديث منصة Falcon لتزويد العملاء بتحكم أكبر في تسليم محتوى الاستجابة السريعة
أخيرًا وليس آخرًا، قالت CrowdStrike إنها أشركت اثنين من بائعي أمن البرامج المستقلين التابعين لجهات خارجية لإجراء مزيد من المراجعة لرمز مستشعر Falcon لكل من الأمان وضمان الجودة. كما أنها تجري أيضًا مراجعة مستقلة لعملية الجودة الشاملة بدءًا من التطوير وحتى النشر.
كما تعهدت بالعمل مع Microsoft حيث يقدم Windows طرقًا جديدة لأداء وظائف الأمان في مساحة المستخدم بدلاً من الاعتماد على برنامج تشغيل kernel.
وقالت: “يتم تحميل برنامج تشغيل kernel الخاص بـ CrowdStrike من مرحلة مبكرة من تمهيد النظام للسماح للمستشعر بالمراقبة والدفاع ضد البرامج الضارة التي يتم تشغيلها قبل بدء عمليات وضع المستخدم”.
“إن توفير محتوى أمني محدث (على سبيل المثال، محتوى الاستجابة السريعة لـ CrowdStrike) لقدرات kernel هذه يمكّن المستشعر من الدفاع عن الأنظمة ضد مشهد التهديدات سريع التطور دون إجراء تغييرات على كود kernel. محتوى الاستجابة السريعة هو بيانات التكوين؛ وليس كذلك رمز أو برنامج تشغيل kernel.”
يأتي إصدار تحليل السبب الجذري باسم شركة دلتا إيرلاينز قال ليس أمامها “خيار” سوى طلب تعويضات من CrowdStrike وMicrosoft لتسببها في اضطرابات هائلة وتكلفها ما يقدر بنحو 500 مليون دولار من الإيرادات المفقودة والتكاليف الإضافية المتعلقة بآلاف الرحلات الجوية الملغاة.
لدى كل من CrowdStrike وMicrosoft منذ استجاب للانتقادات، قائلين إنهم ليسوا مسؤولين عن انقطاع التيار الكهربائي الذي استمر لعدة أيام وأن شركة دلتا رفضت عروضها للحصول على المساعدة في الموقع، مما يشير إلى أن مشاكل شركة النقل يمكن أن تكون أعمق بكثير من تعطل أجهزة Windows الخاصة بها نتيجة للخلل التحديث الأمني.
إرسال التعليق