بقلم

رأينا: ”البقرة المتسخة“ – هل يجب علينا إعادة النظر في أمن أنظمة لينكس؟

على الرغم من الاسم المضحك والجاذب للاستهزاء إلا أن ”البقرة المتسخة“ أو Dirty Cow اعتبرت أسوأ ثغرة أمنية في تاريخ لينكس على الإطلاق. هل فقد نظام لينكس المعروف بأمنه الرقمي رونقَه؟

يُقال أن لينوس تورفالدز، مخترع نظام تشغيل لينُكس، كان قد اكتشف ذلك قبل إحدى عشرة سنة. إلا أن الثغرة الأمنية التي أطلقت عليها اسم Dirty Cow طافت إلى السطح قبل أيام معدودة فقط، وبنتائج اعتُبرت “كارثية”.

بالرغم أن أصل التسمية هو في الآلية الكامنة وراء إصابة الأنظمة، إذ أن الخطأ البرمجي متواجد في آلية النسخ-عند-الكتابة (Copy on Write) التي تقوم بها نواة نظام التشغيل لتكرار أو إعادة نسخ عملية Process معينة دون إعادة نسخ الذاكرة التابعة لها (كسبًا للوقت)، فتُبقي الذاكرة مخزنةً في عناوينها وتوسِمها بأنها غير قابلة للكتابة.

ولم يقلّل الاسم الساذج لهذا الخطأ البرمجي الخطير من أهميته والمخاوف المحيطة به. فإن عدد الأجهزة المتأثرة بهذه الثغرة تقدّر بالملايين، لا سيما إذا أخذنا بالاعتبار أجهزة الخوادم وكذلك هواتف الأندرويد، إذ أن نظام الأندرويد مبني أيضًا على نواة تشغيل لينكس. وتبيّن أن في ثوانٍ قليلة، بمكن للـ”متسلل“ استخدام هذه الثغرة لتشغيل كود بصلاحية Root والتحكّم الكامل هذه الأجهزة.

عادًة ما كانت الأخطاء البرمجية للبرمجيات مفتوحة المصدر تُحلّ بوقت قياسي، ضمن علاقة طردية -روّج لها لينوس تورفالدز نفسه- بين عدد ”العيون“ الناظرة للكود المصدري وعدد الأخطاء البرمجية المكتشَفة. وعادةً ما كانت الأخطاء البرمجية (والثغرات الأمنية) للبرامج مفتوحة المصدر كثيرة العدد للسبب ذاته. إذ أن الإعلان عن هذه الأخطاء (طبعًا بعد تصحيحها) هو أمر شائع في مجتمعات المصدر المفتوح، مقارنة بالأنظمة الاحتكارية التي تفضل عدم الكشف عن هذه الأخطاء إلا بعد الإبلاغ عنها من جهات أخرى.

إلا أن وجود خطأ برمجي كهذا منذ سنوات أمر يخالف -شكلًا- هذه القواعد. فهل يمكن اعتبار لينُكس أقل أمانًا مما كنا نفترضه في السابق؟

كل من درس وعمل في مجال البرمجة مدرك أن الأخطاء البرمجية متواجدة دومًا في أي برنامج، والقاعدة الذهبية في هندسة البرمجيات تقول أنه لا يوجد برنامج خالٍ من الأخطاء تمامًا. وهذه قاعدة تصحّ للبرامج كافةً، كانت مفتوحة المصدر أو لم تكن. فنظام تشغيل لينُكس ليس استثناءً.

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

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

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

ولكن، بكل تأكيد، ليس لينكس أكثر إصابة بالهجمات أو أقل أمانا مما كنا نفترض، فجميع الأنظمة تحتاج إلى متابعة وتحديث واهتمام. أما فكرة وجود أمان دائم لأي برنامج هي فكرة زائفة من الأساس.