قانون لينوس غير صحيح؟


القلب النازف: هل قانون “لينوس تروفالدز” باطل؟!في اﻷيام القليلة الماضية، تمّ اكتشاف ثغرة حرجة في مكتبة OpenSSL والتي سُميت بـ “القلب النازف” (Heartbleed) والتي أثارت صخبًا واسعا في المجال البرمجي، وبالتأكيد لقد سمعتم عنها كثيرا في اﻵونة اﻷخيرة.

هذه الثغرة، والتي تعرّض معلوماتك الهامة على الوِب كمعلومات بطاقتك الائتمانية ومعلومات تسجيل الدخول إلى الخطر؛ كما ظهرت مؤخرًا بعض المقالات التي هي ضدّ المصدر المفتوح تتهمه ببعض المغالطات، والتي تحاول أن تخلق جوًا من المخاوف المثارة حول المصدر المفتوح، ولذلك فلا عجب حينما ترى أحد مطوري المصدر المفتوح يتحوّل فجأة للدفاع عن شركة آبل ومُهاجمًا مجتمع لينكس، الذي يبين مقدار المال والرشوة التي تقاضاها ذلك الشخص.
العلّة تركت بعض الناس يشككون في قانون لينوس تروفالدز Linus’s Law الشهير، والذي ينصّ على:  “إذا وُجدت عيون كافية، فإن كل العلل ستصبح سطحيّة” ، أو بعبارة أكثر توضيحًا: “إذا توفرت نسبة كافية من فاحصي الشيفرة، فإن العلل ستؤول إلى إيجاد حل لها”؛ فهل هذا القانون باطل حقا؟ وهل البرنامج مفتوح المصدر أقل أفضلية من المملوك؟ كل هذا سنتكلم عنه بعد قليل مع الرد على تلك المغالطات …
يسّخر “Miguelde Icaza” (المؤسس الشريك لمشروع Gnome،والذي انتقل إلى Apple OS X العام قبل الماضي)  من نظام لينكس قائلا على تويتر في تغريدة توضح الدعاية الواضحة:
” أين رجال لينكس الساخرون من أمان آبل هذا اﻷسبوع؟ لقد افتقدت تغريداتهم المضحكة وكتاباتهم المثقوبة ”
أولا وقبل كل شيء، ما هي هذه الثغرة؟!
قبل الخوّض فيما كان يفعله رجال لينكس هذا اﻷسبوع، دعونا أولا نلقي لمحة حول هذه الثغرة، Heartbleed ثغرة أمنيّة في مكتبة OpenSSL وهو بروتوكول شعبيّ مفتوح المصدر مُستخدم لتشفير أجزاء واسعة من شبكة اﻹنترنت، إنها تستخدم لحماية أسماء المستخدمين وكلمات المرور ومعلومات حساسة تعيّن على مواقع آمنة، كانت العلة موجودة ﻷكثر من عامين واكتشفت مؤخرا فقط؛ وعلى الفور، وبمجرد اكتشاف الشغرة تم ترقيعها فورا وخلال ساعات قليلة ولقد أَطلقت كافة التوزيعات المعروفة تحديثات هامة لترقيع هذه الثغرة؛ فهل هذا الضعف جعل المصدر المفتوح أقل أمنا من منتجات آبل وميكروسوفت؟!
هل البرمجيات المملوكة أفضل من المصدر المفتوح؟
كم مقدار البيانات التي تعرضت للخطر؟ كم عدد المليارات المفقودة؟ لا شيء نعرفه. كم مقدار ما يفقده العالم بسبب تقنيات ميكروسوفت المملوكة؟ البلايين من الدولارات قد خُسرت!
إن غالبية هجمات NSA ما كانت لتحدث إلا بسبب خلل في منتجات ميكروسوفت والتي ورد أنها تشترك مع وكالة NSA بحيث يمكن استغلالها لاختراق أجهزة الحاسوب، إن ثغرات ميكروسوفت هي التي تسمح للولايات المتحدة اﻷمريكية بالتجسس على الرئيس الفرنسي مثلا، وبالقضاء على البرامج النووية اﻹيرانية، وهي أيضا التي تسمح بتشغيل التجسس على نطاق واسع ضد نشطاء حقوق اﻹنسان، باﻹضافة إلى أن هنالك اﻵلاف في عداد المفقودين من القضايا والحالات كل عام حيث يفقد الناس والشركات الملايين من اﻷموال بسبب الثغرات اﻷمنية الموجودة في منتجات ميكروسوفت.
المصدر المفتوح سيظل دائما أفضل من البرمجيات المملوكة
باﻹضافة إلى كونها أكثر أمانا بكثير من المنتجات المملوكة، فالمشاريع مفتوحة المصدر كـ OpenSSL تسمح للناس بالقيام بمراجعة وتدقيق البرنامج لتحسين البرنامج نحو اﻷفضل، وهذا شيء مستحيل في البرمجيات المملوكة إذ لا يمكنك تدقيق أو مراجعة اﻷوامر البرمجية، فمجرد كلامك بهذا الشأن يعتبر ضدهم؛ ولقد شاهدنا ما تقوم به وكالة اﻷمن القومي NSA مع تلك الشركات كآبل وميكروسوفت إذ منحتهم الثقة للتجسس على حواسيب المستخدمين، كما شاهدنا في أخبار اﻵونة اﻷخيرة.
وكما ذكرنا أعلاه، تم في لينكس إغلاق الثغرة في غضون ساعات قليلة فقط، بينما استمر اﻷمر في ماك مدة ثلاثة أيام بلا ترقيع!
إن تستر الشركات الاحتكارية على مثل هذه الثغرات هو أمر محتمل جدا، لصالح إرضاء وكالة اﻷمن القومي NSA.
يقول  ريموند: “لحسن الحظ ميزة كبرى أخرى من ميزات المصادر المفتوحة، هو أننا يمكننا دفع اﻹصلاحات بسرعة في ساعات أو أيام قليلة بينما مستخدمو اﻷنظمة المملوكة فسيكونون محظوظين إذا تم ترقيع ثغرتهم بعد شهرين”
نأتي اﻵن إلى قانون لينوس
العلة ليست في القانون، إنما في التنفيذ، كم عدد فاحصي الشيفرة الذين يبحثون عن الثغرات في المشروع؟ قد يعتمد أيضا على مدى كيفية اهتمام المنظمة بصيانة المشروع… ما هي الحوافز أو الدوافع ﻷولئك الناس لتعقّب اﻷخطاء؟! هذا هو السبب حتى في الشركات الكبرى مثل “قوقل” إذ تقيم بعض المسابقات من حين ﻵخر للتشجيع المطورين لاكتشاف الخلل في منتجاتها؛ يمكن أن نفترض أن الناس في OpenSSL لديهم بعض القضايا، حيث قد لا يكون هناك حافز أو دافع لتتبع الشيفرة فيه، نحن فقط نحتاج المزيد من العيون ومتتعبي الشيفرة لمثل هذه المشاريع لا أكثر…
OpenSSL هو حالة استثنائية ولا يجوز القياس هنا
دعونا نحاول تفسير لمَ قانون لينوس غير قابل للتطبيق في هذه القضية:
ليكون قانون لينوس قابلا للتطبيق على الناس معرفة ما الذي يستخدمونه وما الذي يتابعونه أو يفحصونه، إن OpenSSL هي مكتبة أساسية في العديد من تطبيقات UNIX ولكن عادة ما يتم استخدامها على نطاق واسع من قبل الناس مُتجاهلين أهمية مُتابعة والعناية بالشيفرة الخاصة به، وقد اتخذ الناس أمرا مفروغا منه أن OpenSSL آمن، وأراهن أنه حتى بعد ترقيع هذه الثغرة سوف يعود الناس لعادتهم القديمة قائلين أن OpenSSL آمن.
OpenSSL يملك قاعدة مستخدمين كبيرة، ولكن نسبة المساهمين في الشيفرة ضئيلة جدا، وهذه الحادثة لا تدحض قانون لينوس ﻷنه لا يمكن ﻷحد أن يذكر عدد القائمين الفعليين على المشروع المتتبعين للشيفرة، وكونك تستخدمه أو لديك العديد من المعلومات حول اﻷمنيّة  لا يعني أنك مؤهل لتفسير وتشخيص القضايا الخاصة ببرنامج ما.
فالعيون الكافية هي قانون صحيح، إذ في OpenSSL لا يوجد مقدار كاف من العيون، اﻷمر الذي جعل تلك الثغرة تحصل، إنما الخلل في الحوافز والدوافع التي تقوّي المشروع.
لذا فإن قانون لينوس صحيح تماما ولا يزال ساري المفعول، وبعض المشاريع تحتاج المزيد من اﻷعين؛ ولتحقيق ذلك بالتبرع لمشروع OpenSSL ليصبح أفضل:
https://www.openssl.org/support/
شكرا لك ولمرورك