الهكر المصري محمد عبد الباسط يحكي تجــربته فى إكتشــاف ثغــرة أمنيــة فى الفيسبـــوك
محمـــد عبــد الباســط / مُبـــرمج من مِصـــر
نشــرت العديد من المواقع التقنيــة العــربية مؤخـراً خبــر قيامي بإكتشــاف ثغــرة أمنيــة على الفيسبــوك ، والتى كانت نتيجتهـا إستــلامي لمكافأة ماليـــة ومعنــوية من إدارة الفيسبــوك..
أحببــت هنــا أن أشــارك معكــم عبــر (أراجيــك) تجــربتي فى إكتشــاف الثغــرة بشكــل أكثر تفصيـلاً ، وكيفيــة اكتشافي لها .. ربمـا تكون مرجعـاً مفيــداً للمبــرمجيــن والهاكــرز ذوي القبعــات البيضــاء والمصمميـن ، فى عالمنــا العــربي كله ..
البــداية
بــدأ كل شيئ بشكـل عفــوى وبسيـط للغاية ، عندمـا وصلنـى تنبيـه من الفيسبـوك بقيــام أحد مستخدمي الفيسبـوك بمتابعتـي ، ومن ثمّ قمت بالضغط على أيقــونة التنبيهــات ومن خلالها إلى قـائمة المتابعيــن ..
لاحظــت بعد الدخــول إلى الصفحة أن رابط الصفحـة كان بهــذا الشكــل :
لاحظت أن الرابط بـه معلومات ومتغيــرات لم يتم تغليفها بالشكـل الصحيح ، أحدهــا المتغيــر notif_ids ، والذي يحتــوى على أرقــام التعــريف الخاصة بالملف الشخصــي ( Profile id ) لكل مستخـدم قام بمتابعتــى ، بحسب ترتيب توقيــت المتابعــة ..
وبالتالي فهـو يعمـل كمؤشــر لترتيب قائمة المتابعيــن حسب توقيــت المتابعة ..
لذلك ، قمت بعمــل تغييــر لرقم من الـ ( ids ) إلى الرقم 4 ، وهو الرقم الخاص بحســاب مؤسس الفيسبـوك (مارك زوكــربيـرج) ..
وحـدث ماتوقعتــه !
*************
بعــد أن قمت بهذه الخطــوة ، فوجئـت أن مارك زوكـربيرج شخصيـاً أصبــح عندي فى قائمة المتابعيــن ” وكـأنه قــام بمتابعتــي من قبــل “ .. فعــرفت فوراً أننى عثــرت على ثغــرة بالغة الخطــورة ، ولكني فى نفس الوقت كنت فى حاجــة إلى دليــل قاطع أقدمه لإدارة الفيسبــوك ، تثبت وجود الثغــرة واكتشافي لها ..
لذلك ، قمت بوضــع Post على حائطـى الشخصــي ، لمشــاركة الأصــدقاء والمتابعيــن ، أخبــرهم من خلاله أن (مارك زوكــربيــرج) قــام بمتابعتــى على الفيسبــوك ، ودون أن أشــرح لهم بالتفصيــل وجود هذه الثغـــرة ، حتى يكونوا على إطّلاع بها ، ويعتبــر المنشــور دليلاً أقدمه للإدارة فى حالة حدوث أي ممـاطلات..
ثم قمت بإرســال الرسالة التاليــة إلى إدارة الفيسبــوك ، تشــرح لهم وجود ثغـــرة :
Vulnerability Scope: Main Site (www.facebook.com) *.facebook.com
Title: URL Manipulation
Product / URL: https://www.facebook.com/symbian.symoh?sk=followers¬if_ids%5B0%5D=4
Description and Impact: Facebook is not verifying the followers from the server side, this is gonna lead to a url manipulation through editing the “notif_ids[x]” variable to any facebook profile id you want to be followed by and deceive anybody to get some trust and endorsement as this is a clearly known as social engineering nowadays, And i think this could lead to another malicious behave.
أعتــرف لكم أننى شعــرت فيما بعـــد ببعض المماطلة تجـاهي من طــرف الفيسبــوك ، لا داعي لذكــر تفاصيلها ، إلا أن المسؤول عن التحقيق فى هذه الثغــرة اقتنــع أخيــراً ، خصوصاً بعد تقديمي للأدلة المختلفة Proof of Concept ، جعلـته يتفهّــم ويعتــرف بوجود الثغـــرة ..
وبالفعــل ، قامت إدارة الفيسبــوك بمكافئتي ماديــاً بمبلــغ 500 دولار ، ومعنــوياً بإدراج إسمـي فى قائمة الشكر لذوي القبعات البيضاء المساهمين في الكشف عن الثغرات الامنيـــة.
شــرح الثغـــرة :
هــذه العمليــة التى قمت بها يُطلق عليها إسم ( url manipulation ) ، وهي تعتبــر أمراً خطيراً للغاية على المستــوى الأمنى ، بسبب عدم التحقق من جانب الخـادم Server Side Verification ، إذا كان مارك زوكـربيرج قام بمتابعتي فعلاً على حسابي للفيسبــوك أم لا ..
لذلك ، نصيحتي لكل المبرمجين والمطورين والمصمميــن أن يكونوا على حذر دائم من أي URL ، وإجراء فحــص دقيق للروابط والمتغيــرات داخل الملفـات البرمجيــة الخاصة بموقعــك ، أيــاً كانت لغــة البـرمجة .. هذا الأمــر تحديداً يغفـل عنه كبـار المبـرمجين ، فمابالك بالمبتدئيـن ..
شخصيـاً ، اعرف الكثير من المواقع الكبــرى المميــزة التى عانت الأمــرّين بسبب عدم التحقق من جانب السيـرفر ، وتمــرير المتغيــرات للمعالجــة بشكــل مباشر من جانب المستخدميــن ، وأوضحهــم مثــال الفيسبــوك مؤخــراً !
***************
أتمنــى أن تكونوا قــد استفــدتم من هــذه التجــربة .. وأرحــب بالنقــاش معــكم ، أو توضيــح أي نقطــة مجهــولة بالنسبة لكم..
لمتابعة محمد عبد الباسط عبر فيسبوك و تويتر