ثغرة الHeartbleed, تهدم اساطير المصادر المفتوحة كلها!

 

منذ ايام قليلة, اهتز العالم كله لاكتشاف احدى اكبر الثغرات فى تاريخ التقنية و شبكة الانترنت. الثغرة التى تخص مكتبة openssl المفتوحة المصدر.

الحديث عن الثغرات معتاد و متكرر, فكل البرامج تقريبا تحتوى على ثغرات, و الذى يكتشف منها قد لا يتعدى ال1% مما هو موجود و لم يكتشف بعد,

و لكن أهمية هذه الثغرة انها ألقت الضوء على الطعام الفاسد المحاط بالذباب و الذى كان الجميع يتناوله دون ان يدرك!

الثغرة بالطبع هزت مجتمع المصادر المفتوحة, لأنها تأتى فى قلب احدى(بل الوحيدة تقريبا) اهم و أشهر المكتبات التى تعتمد عليها معظم أنظمتهم و مشاريعهم, و صادق بعض أعلامهم  على خطورتها, حتى ان احدى الصحفيين المعروفين بانحيازهم الدائم للمصادر المفتوحة, اعترف بأن هذه هى أسوأ اللحظات فى تاريخ المصادر المفتوحة.

الأهمية هنا ليست الثغرة نفسها, و لكن الاسباب التى أدت الى هذه الثغرة. فالثغرة سوف يتم سدها عاجلا ان اجلا, لكن الاسباب على ما يبدو فانها مستمرة معنا و بالتالى فتوقع المزيد من المصائب فى المستقبل!

ما هى ثغرة الHeartbleed؟ و لماذا هى خطيرة؟

مكتبة openssl هى مكتبة مفتوحة المصدر لبروتوكول الاتصال المشفر SSL,TLS , الهدف من هذا البروتوكول هو تشفير معلومات الاتصال بين الحاسوب و الخادم, بحيث لا يستطيع طرف ما فى المنتصف قراءة معلومات الاتصال.

openssl هى الاوسع و الاكثر انتشارا فى هذا المجال لأنظمة لينكس, حيث يعتمد خادم الويب “اباتشى” و nginx عليها فى تشفير الاتصالات.

ثغرة الheartbleed او القلب النازف تمكن المخترق من عمل dumb لذاكرة الخادم الذى يستخدم مكتبة openssl, و بالتالى يستطيع الحصول على مفتاح التشفير, و قراءة معلومات الاتصال التى عادة ما تكون حساسة.

طبعا هذا خطير جدا بالنسبة للبنوك و المعلومات الخاصة (لحسن الحظ معظمها يعمل بنظام ويندوز سرفر و لم يتأثر).

الموضوع خطير خاصة للمؤسسات المستهدفة كالبنوك و مقدمى خدمات السحاب الكبيرة كجوجل و المواقع الشهيرة كفيسبوك, مايكروسوفت و خدماتها خارج نطاق الخطر لأنها لا تستخدم openssl, و كذلك كل من يستخدم ويندوز سرفر و IIS خارج نطاق الخطر.

و لكن ما هى الاسباب التى تحدثنا عنها؟

بعد اكتشاف الثغرة, ألقى الضوء على عملية تطوير openssl, تلك المكتبة التى تستخدمها شركات تقدر أرباحها بالمليارات مثل جوجل و غيرها.

و اكتشفنا ان عدد مطورىها لا يتعدى ال3 أشخاص واحد منهم فقط يعمل بشكل دائم و الباقى يعملون بشكل متقطع. هذا طبعا بالمعايير الحالية فريق متواضع جدا, ناهيك عن ان هؤلاء لا يتقاضون أى شىء تقريبا سوى دولارات قليلة من التبرعات الشحيحة التى تلقى لهم من قبل “فاعلى الخير”, و اكتشفنا ايضا ان مكتبة المفترض انها حيوية كهذه أخر تبرع قد “القى” اليها كان 2000 دولار, و هو المبلغ نفسه الذى قد تحصل عليه عاهرة من المستوى المتوسط مقابل ليلة واحدة مع رجل اعمال.

اذن لدينا مكتبة المفترض انها تؤمن معلومات حساسة للغاية, و تعتمد عليها كبرى الشركات, و يتم تمويلها بواسطة ال”شحاتة”. هل هذا وضع تقنى او عالم تقنى نحلم به و نريده؟ او نعتمد عليه فى حياتنا و فى حفظ معلوماتنا الحساسة و حساباتنا البنكية؟ أى فوضى و سوء ادارة, و اى سذج هؤلاء نعتمد عليهم فى عالمنا التقنى؟

كما قلت سابقا, ان المهم هى الأسباب, و ليس الحدث, لذا فان علينا استخلاص العبرة , و ليس مجرد التعمية على الحدث و “عيل و غلط” و “سماح النوبادى” و تستمر نفس الفوضى الى ان نفيق على كارثة أكبر و اسوأ.

الاسباب ببساطة و بدون مجاملة و لا نفاق لأحد, هى طريقة تطوير  البرامج المفتوحة المصدر, أو الbusiness model الخاص بها. يعتقد محبو المصادر المفتوحة انه يمكن تطوير برامج موازية فى الجودة و القدرات للبرامج التجارية التى يطورها المحترفين (محترفين تعنى هنا من يتقاضون المال مقابل البرمجة و ليس فى اشارة الى مستوى معين) بدون أموال و لمجرد الهواية أو خدمة المجتمع.

و هذا منافى لأبسط قواعد المنطق و النفس الانسانية و حتى الدين و المجتمع. فالأديان و ان كانت تشجع على فعل الخير و لكنها تحرم الاستغلال و السخرة. (نعم البرمجيات مفتوحة المصدر هى سخرة و سوف اشرح ذلك), و بل تشدد الأديان ان كل شخص يجب ان يحصل على اجر مقابل عمله.

يعتقد هؤلاء ايضا ان البرامج مفتوحة المصدر هى أفضل من تلك مغلقة المصدر, لا لشىء الا لأنها مفتوحة المصدر.

أول أسطورة سقطت, أسطورة الاعين الكثيرة!

يصدق هؤلاء فى نظرية ساذجة قالها “لينوس توريفالدى” عن الاعين الكثيرة. النظرية تقول ان طالما هناك أعين كثيرة تقوم بالاطلاع على الكود, فان الاخطاء يتم اكتشافها بسرعة و سهولة.

دعك من أن قائلها “حرامى” كود فى الاصل سرق بضعة أكواد و أفكار من نظام Mimix و نسبها الى نفسه, و دعك من انه شخص ماجن و فاسد, فان هذه النظرية الساذجة كانت أول نظرية من نظريات المصادر المفتوحة و التى سقطت بعد ثغرة القلب النازف.

أين هذه العيون الكثيرة التى قامت بالاطلاع على اكواد openssl؟ نحن هنا نتحدث عن 6 أعين لا أكثر و لا أقل, مكتبة openssl تستخدم داخل برامج جوجل و هى شركة ضخمة توظف ألاف المبرمجين, لم يقم أى من هؤلاء بالاطلاع او حتى المرور السريع على اكواد تقع فى قلب اكثر منتجاتهم حساسية و أهمية!

دعونا نسترجع بعض دعايات المصادر المفتوحة الرخيصة(قبل الثغرة بالطبع) :

“مع المصادر المفتوحة, يمكنك ان تقوم بالاطلاع على الاكواد, بل و ان تقوم بالتعديل علىها و المشاركة فى تطويرها و تحسينها, و يمكنك ان تشارك حتى تعديلاتك و تحسيناتك على الاكواد مع الاخرين”.

ما أثبتته الثغرة, أنه لا احد يرغب بالاطلاع على اكواد الاخر, و ان اطلع فانه لا يرغب بالتعديل او التحسين, بل يقوم باستخدامه كبديل مجانى للبرامج التجارية كصندوق مغلق مجانى, و يستخدمها تماما كما يستخدم البرامج مغلقة المصدر.

نحن هنا نتحدث عن شركات من عينة جوجل و ردهات توظف جيش من المبرمجين المحترفين, و التى لم يكلف أحد منهم بالمشاركة فى تطوير مكتبة تقع فى صلب أعمالهم, فما بالك بالمستخدم العادى الذى ليس لديه اى معرفة تقنية, أو حتى المستخدم الخبير أو المبرمج الذى يعمل بشكل منفرد؟!

هذا يلقى الضوء على ألاف المشاريع المفتوحة المصدر التى لا يطورها سوى مؤسسيها. الشركات و المستخدمين يرغبون باستخدام البرامج مفتوحة المصدر المجانية, و لكنهم حتما لا يرغبون فى المشاركة بتطويرها.

السبب ان قراءة و فهم اكواد الاخرين عملية تستغرق وقتا طويلا, و هى عملية مملة و مرهقة, و فى النهاية فان الانجاز دائما ما ينسب الى صاحب المشروع الاصلى, و طالما ليس هناك عائدا ماليا يعوض الجانب المعنوى, فان الجميع يفضل بدء مشروعه الخاص بدلا من العمل على مشاريع الاخرين.

بالتالى, فان نظرية العيون الكثيرة قد سقطت سقوطا مدويا, و قد ثبت أن العيون مفتوحة المصدر هى نفس عدد العيون المغلقة المصدر, بل و أن العيون مغلقة المصدر ترى الصورة بشكل أوضح لأنها تتقاضى الاموال! فلا احد يعمل متطوعا مثلما يعمل مقابل المال.

أسطورة نموذج الاعمال مفتوحة المصدر

صدع اعلام المصادر المفتوحة رؤوسنا بالشركات الواعدة التى تتبنى المصادر المفتوحة و تكسب “الملايين” منها! و بعيدا عن ان الحقائق التى امام أعيننا تقول غير ذلك, فمعظم الشركات التى تعتمد على المصادر المفتوحة قد أفلست, أو هى شركات صغيرة لم تحقق بعد الملايين التى يتحدثون عنها, شركة “ردهات” هى الاستثناء الوحيد هنا و الذى يثبت القاعدة, فى مقابل شركات مثل “صن” و “ماندريفا” أفلست بسبب المصادر المفتوحة.

كما نعرف لا يمكن عمليا الربح من برنامج مفتوح المصدر, لأنك مضطر الى تقديم الاكواد مرفقا مع برنامجك (و التى ثبت انه لا احد يقرأها!), لذا فانه لا يمكن عمليا بيع نسخ من برنامجك مباشرة, لأن أى شخص أخر سوف يقوم بترجمته و توزيعه مجانا, أو بسعر أقل منك.

لذا فان الشركات التى تنتج أو تتكسب من هذه البرامج, تلجأ الى طرق ملتوية للربح, مثل الاعتماد على خدمات الانترنت مربحة و تقديم البرامج مفتوحة المصدر لتوجيه المستخدمين الى زيارة موقعك (تتبع جوجل هذا الاسلوب, اللطيف ان خدمات جوجل السحابية كلها مغلقة المصدر),

أو قد تعتمد على خدمات ما بعد البيع (الدعم الفنى أو التعليم و تتبع شركة ردهات هذا الاسلوب), و هذا لا يصلح الا فى برمجيات معينة.

الطريقة الثالثة و هى الأسوأ, التبرعات, حيث تقوم بنشر برامجك مجانا و تطلب من فاعلى الخير التبرع للمشروع حتى لا يتوقف التطوير.

كما نرى فان الطريقتين الاولتين لا تعتمدان على البرنامج نفسه, أى ان الربح يتم توليده من خدمات أخرى (خدمات سحابية, أو خدمات دعم فنى),

تحتاج الطريقة الاولى الى شركة كبيرة لتوليد الارباح, لأن تقنيات السحاب تحتاج الى بنية تحتية ضخمة و مكلفة للغاية, بينما الطريقة الثانية تنجح فقط مع البرامج المخصصة للمؤسسات الحكومية و الشركات الكبيرة, كما يجب ان يتم الابقاء على البرنامج صعب الاستخدام و ملىء بالعثرات حتى تضمن طلب الدعم (و هذا بشكل او اخر عملية نصب).

بالتالى فان الطريقة الثالثة هى الأكثر واقعية لمعظم المطورين و المؤسسات الصغيرة و متوسطة الحجم.

و قد ثبت ان هذه التبرعات, عدا عن كونها مهينة,  فانها لا تولد مدخولات كافية لاستمرارية التطوير, أو لضمان جودة المنتج مثل حالة الopenssl.

بالتالى فان openssl و رغم انتشارها الهائل, فانها شكلت لصانعيها الثلاث مشروعا غير مربحا فى النهاية, حتى أن احدهم فقط (و الذى يبدو ان لم يجد عملا حقيقيا) كان يخصص كامل وقته لصيانة المشروع و متابعته, رغم ان الانتشار فى الاوضاع الطبيعية كان يجب ان يقابله أرباح و زيادة فريق العمل, و هو ما يقودنا الى النقطة الثالثة,

العمل بالسخرة!

الوضع الفوضوى الذى كشفت عنه هذه الثغرة, هو تكاسل الشركات الكبرى التى تبلغ أرباحها بالمليارات عن التبرع حتى بدولارات قليلة لopenssl.

شركات مثل جوجل و فيسبوك ليست داعمة للمصادر المفتوحة كما يشاع, و الدليل ان جوجل مثلا تتكسب من المصادر المغلقة, معظم مشاريع جوجل المربحة مثل محرك البحث, و خدمات السحاب كلها مغلقة المصدر.

لكن جوجل لها طريقة ملتوية فى العمل,

اذا نظرنا لبضع سنوات خلت, كانت صناعة البرمجيات مثالا براقا للرأسمالية الجديدة, و أعنى تلك الرأسمالية التى لا تعتمد على تراكم الثروة بقدر ما تعتمد على الافكار و الجهد.

فى عام 1981 طلبت IBM من شركة مايكروسوفت تصميم نظام تشغيل مشابه لCP/M الذى كان رائجا فى هذا الوقت.

لم تقم مايكروسوفت بكتابة نظام دوس, فلم يكن لديهم الوقت لذلك, فقاموا بشراء نظام اسمه QDOS من شركة صغيرة تدعى Seattle Computer Products بمبلغ 25 الف دولار (كان كبيرا فى هذا الوقت) و قاموا بتعيين مصمم نظام QDOS “تيم باترسون”.

أصبح تيم باترسون غنيا, و استفادت مايكروسوفت فى النهاية رغم ان نظام دوس تمت اعادة كتابته فى نسخته الثانية.

فى 1983 قامت شركة بورلاند بشراء مترجم باسكال مغمور من صاحبه Andres Hejlsberg و طبعا تم تعيين Andres Hejslberg, و هو الشخص الذى ابدع بعد ذلك و قاد فريق تطوير أداة البرمجة الشهيرة “دلفى”, ثم انتقل الى مايكروسوفت و قاد تطوير منتج أخر رائع هو “سى#”.

هذه الابداعات كلها ما كانت لتتحقق لولا نموذج الاعمال الطبيعى, فAndres Hejlsberg و Tim Patresson لم يكن حلمهم هو تغيير العالم, لكن حلمهم كان سيارة فيرارى و منزل على البحيرة,

هو حلم أنانى, لكن فى طريق تحقيق هذا الحلم الانانى أفادوا الناس و البشرية و تكنولوجيا المعلومات أكثر مما فعل مئات من الحالمين بتغيير العالم!

لم تستغل مايكروسوفت و لا بورلاند أى احد, هم قاموا بتوفير بيئة العمل المناسبة, حصل تيم باترسون و اندرس هيزلبرج على حلمهم فى الثراء, و حصلت مايكروسوفت و بورلاند على الارباح, و حصل المستخدمين على منتجات رائعة, انه موقف رابح-رابح المثالى.

فى المقابل فان شركات من عينة “ردهات” و جوجل تقوم بالحصول على الاكواد الجاهزة و المجانية, و لأن لديها البنية التحتية المناسبة لتوليد الارباح منها, فانها تقوم بتوليد الارباح مستغلة الالاف من الاكواد مفتوحة المصدر, و المفترض ان تلقى لهم بالتبرعات! بل يبدو اكتشفنا فى حالة الopenssl فانه حتى هذه الفتات القليلة ترفض جوجل دفعها!

لا تفهمنى بصورة خاطئة, فأنا لا الوم جوجل و لا “ردهات” هنا, على الاطلاق,

قد نلوم جوجل مثلما نلوم الرجل الذى يشتهى امرأه تتعمد عدم الاحتشام,

ما الذى يجب تغييره؟ هل نعلم الرجل غض البصر و نترك هذه المرأه المستهترة؟

هؤلاء من يتركون أكوادهم فى العراء, يعملون بالسخرة فقط حتى تقوم شركات مثل جوجل و ردهات باقتطاع مصاريف البحث و التطوير و زيادة الارباح!

و ما العمل؟

طرحنا المشكلة, و الاسباب, فما الحل حتى لا تتكرر هذه المأساة؟

من طرحى, توصلت الى استنتاج ان صناعة البرمجيات تتجه الى فوضى عارمة, تهدد مستقبلها و بالتالى مستقبل الكثيرين لما أصبح لهذه التكنولوجيا من تماس مباشر مع حياة البشر و أعمالهم و مصالحهم.

الحلول أبسط مما تتصور, و لكنها تحتاج الى بعد نظر و ان نترك تلك النظريات الفارغة و الحوارات البيزنطية التى لا يجيد محبو المصادر المفتوحة غيرها!

من يطور البرمجيات مفتوحة المصدر؟ بعضها يطوره شركات استثمارية و لا مشكلة لدى فى ذلك, و لكن البعض الاخر تطوره ما يشبه المؤسسات الخيريه,

و المؤسسات الخيرية أو الجمعيات الخيرية هى منظمات غير هادفة للربح,يعمل بها متطوعين بدون راتب, قد تكون معفاة من الضرائب, أو قد تدفع ضرائب مخففة. تعتمد فى تمويلها و استمرار أعمالها على التبرعات غالبا او الاستثمار البسيط للتبرعات. تهدف الجمعيات الخيرية الى مساعدة البسطاء أو اداء الخدمات الغير مربحة و التى لا تقوم بها الشركات عادة, او الاضطلاع بمهام التوعية و الدعوة لقضايا اجتماعية معينة.

فى المقابل, فان الشركات الاستثمارية هى مؤسسات هادفة للربح, توظف أشخاص يعملون مقابل مرتب تحدده القوانين و ظروف سوق العمل, تفرض عليها ضرائب باهظة.

كلنا بالطبع نعرف الفارق بين الشركة و الجمعية الخيرية, لكن البعض لم يدركوا بعد!

تحدث الفوضى عندما يختلط عمل الجمعيات الخيرية بالشركات الهادفة للربح. هذه لم تحدث من قبل فى التاريخ الاقتصادى لأأى دولة فى العالم! و لكنها حدثت أخيرا فى عالم البرمجيات, و بشكل عجيب,

حيث تستغل الشركات الهادفة للربح أعمال المؤسسات الخيرية الغير هادفة للربح و تقوم باعادة تعليبها و استغلالها فى تحقيق أرباح بطريقة ملتوية.

هذا الوضع تسبب بحالة اقتصادية غريبة, حيث تقوم الشركات باستغلال أعمال الجمعيات الخيرية (القائمة على اعمال المتطوعين), و تحقيق المكاسب من خلالها,

حتى ان بعض الشركات مثل أبل و جوجل, أقاموا ما يشبه مزرعة الاكواد التى يعمل بها متطوعين, للحصول على الاكواد و التحسينات و الافكار المجانية و ضمها لاحقا فى منتجاتهم.

هذا وضع اقتصادى غريب لن ينتج شيئا ذو قيمة أبدا, و لن ينتج شيئا ذو جودة. الحكومات تراقب جودة الأغذية, و الأدوات المنزلية, و السيارات و كل شىء, و لكنها تتوقف عند البرمجيات و تعتقد انها مجرد أكواد لن تضر أحدا! و هذا غير صحيح, لأن هذه الاكواد تحمى معلومات حساسة جدا قد يشكل تسربها كارثة فى بعض الاحيان.

اذن على الحكومات, التى ما تزال تعيش فى عصر ما قبل الحاسوب, أن تضطلع بمسئوليتها و تطور القوانين الحاكمة لهذا القطاع من الصناعة,

أول شىء هو عدم السماح باختلاط جهود المتطوعين مع الجهود التجارية. أى ان تشكل عائقا امام الشركات لاستغلال الاكواد مفتوحة المصدر بشكل تجارى.

لا اقول هنا بمنع المصادر المفتوحة كما اتهمنى البعض, و لكننى أدعو الى منع الشركات الربحية مثل جوجل و ابل من استخدام و تسويق البرامج المفتوحة المصدر.

اذا كانت هناك شركة تؤمن بالمصادر المفتوحة, حسنا فلتقوم بتطوير برامجها و تطرح الاكواد, أما عمل المتطوعين فليظل فى اطار المتطوعين, فيصبح لدينا اتجاهين من البرامج,

البرامج التطوعية مفتوحة المصدر, يسمح فقط للمستخدمين المنزليين باستخدامها ان ارادوا, لا يسمح للهيئات التجارية و الشركات باستخدامها او الاستفادة منها بشكل من الاشكال.

و البرامج التجارية تكون مغلقة المصدر, و يسمح باستخدامها فى الهيئات التجارية و المستخدمين المنزليين القادرين, و تخضع للرقابة الحكومية لاكتشاف مدى التزامها بمعايير الامان و الجودة (مثلما يحدث مع الاغذية مثلا).

يمكن نقل برنامج ما من كونه مفتوح المصدر الى برنامج تجارى بالطبع فى مرحلة ما اذا ما كان يتمتع بالجودة المناسبة.

هذا هو الحل الامثل لانقاذ عالم التكنولوجيا من كارثة اخرى محققة.

Advertisements

3 thoughts on “ثغرة الHeartbleed, تهدم اساطير المصادر المفتوحة كلها!

  1. مقالة اكثر من رائعة استمتعت حقا بقرائتها و اشعشت قلبي عن الاوبنسورس بانا من اول ما عرفت عنها لم لسعد لها فلا يعقل ان اسهر لايلي وعمل بجهد كبير من اجل تحقيق فكرة او مشروع ما ثم ياتي شخص اخر يعمل نسخ لصق و يضيف بعض التعديلات بحكم انه كان في حالة خمول عن المشورع او وفرت له بيئة معينة لياخذ الاسم منك والارباح وكل شيء وانا واقف انتظر تلك التبرعات !! العمل الخيري يبقى عمل خيري اي لا يعقل ان اقوم بكل الجهد في عمل خيري ليأتي وياخذ كل الارباح! من يحاسب! لا أحد!!

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s