لا يوجد أي نظام في هذا العالم مثالي خصوصا في مجال المعلوميات، فأي منصة، تطبيق، موقع، برنامج و غيرها قد لا تكون بتلك الإحترافية التي تعتقد. فحتى مجموعة من الأشخاص في هذا العالم قد كرسو أنفسهم فقط لكشف عيوب هذه المنصات و إستخلاصها، و إن كنت تتسائل لماذا فالإجابة ببساطة لأنه واحد من أكبر المجالات الربحية حاليا في العالم.
أول الأشياء أولا، لما قد تود التبليغ عنها أصلا ؟
أتذكر محادثة طريفة حدثت بيني و بين أحد الأشخاص الذي ربما وجد مشكلة في منصة فيسبوك تمكنه من الإطلاع على رسائل الأشخاص الآخرين دون الحاجة للولوج الى حساباتهم، تصنم صديقنا هذا بين خيارين : أن يقوم بالتبليغ عن الثغرة، او ان يقوم بإستغلالها لقراءة رسائل صديقته الوهمية الذي تجول الشكوك حولها من طرفه.
من وجهة نظر بسيطة، إن كان سيقوم بالتبليغ عن الثغرة ثم تقوم فيسبوك بشكره لذلك و تغلقها هو أسوأ سيناريو قد يحدث له في هذه الحالة، لذلك قرر إستغلالها للتجسس على صديقته لمدة لا تقل عن نصف يوم قبل ان تشرع فيسبوك في إغلاقها و تعليق إسم أحد الأشخاص الذين قامو بالتبليغ عنها في حائط المشاهير خاصتها او Hall Of Fame.
المنصات التي تدفع لك مقابل الثغرة :
ثانياً، إن كنت باحث أمني او شخص يحاول إيجاد ثغرة مهما كلف الأمر فتأكد أولا ان المنصة التي تقوم بفحصها تقبل نظام الدفع عبر الثغرات. تقنيا معظم الشركات تدفع مقابل البحث عن الثغرات و علاجها لكن يوجد شركات متخصصة لديها فريق و طاقم عمل خاص بها يتكفل بهذا الأمر و هنا فهي في غنى عن أي تنبيهات خارجية ( منها مثلا شركة أمازون ).
حتى نساعدك على معرفة أبرز المنصات و الشركات التي تقدم خدمات الـ Bounty Program او الدفع مقابل إيجاد الثغرات يوجد موقع Bugcrowd الذي يقدم لائحة مرتبة بالأبجدية للشركات التي تدفع لك مقابل نظام الثغرات و التي لا تفعل.
في منصة Bugcrowd ستجد الكثير من الخيارات، بشكل عام توجه للرابط الذي قمنا بتوفيره سابقا ثم إبحث عن شركة او نظام محدد في حالتنا هذه قمنا بالبحث عن نظام Android، نجد أمام علامة Bug Bounty انها صحيحة يعني ان جوجل تقبل نظام الثغرات في الأندرويد، كما يمكنك إرسال ثغرتك التي وجدتها عبر الـ Submission URL المتاح أمام Android.
إن لم تكن الشركة ضمن هذه اللائحة فلن يتبقى لك سوى خيارين : الخيار الأول مراسلة الشركة مباشرة و إخبارها بأنك وجدت ثغرة ثم شرح الثغرة و كيف يمكن إستغلالها سلبيا ( دون توفير معلومات أكبر حول كيفية إيجادها او غلقها ) إن كانت إجابتهم إيجابية سيقبلون المزيد من المعلومات حولها مقابل الدفع، إن رفضو، فلك الحرية لفعل ما تريد سواء إستغلالها او بيعها لشركات أخرى ( سنوفر لك بعضها في هذا المال ) و غيرها.
لكن قبل التبليغ بثغرتك تأكد :
ليس أي مشكل او Bug او ثغرة يمكنك ان تحصل على عائد منها أخي الكريم، لا يمكنك مثلا ان تجلس وحيدا و تحاول إرسال رسالة في فيسبوك و تويتر و يظهر لك خطأ من نوع غريب لأول مرة و تعتقد انه Bug و تسارع في مراسلة فيسبوك طمعا في بضعة دولارات، لا تسير الأمور هكذا.
لكل شركة نظام الـ Bounty الخاص بها، أي انواع الثغرات التي تستقبلها و التي ستدفع لك مقابلها، لكل شركة قواعدها الخاصة لكن هنا سنذكر لكم مجموعة من القواعد الرئيسية التي تتشاركها معظم الشركات التي تقبل نظام الـ Bounty :
- أولا أن تكون الثغرة أمنية، أي ان تكون ثغرة بشكل من الأشكال تهدد سلامة المستخدم او سلامة فريق العمل مثل الثغرات التي تؤدي للولوج للحسابات او قراءة الرسائل او الإطلاع على معلومات شخصية لا يفترض بمستخدم آخر الإطلاع عليها.
- أن تكون الثغرة مجربة أكثر من مرة على أكثر من طريقة، لا يمكن لخطأ بسيط يحدث لك فقط أنت ان تقوم بالتبليغ عنه، قد يكون فقط مشكلة سببها حاسوبك او جهازك لا المنصة بعينها لذلك توجب عليك تجربتها مرارا و تكرارا و الا يكون خطأ حدث لمرة واحدة فقط.
- ان يكون الخلل او الثغرة في النظام او المنصة نفسها و ليس منصة مدرجة وسطها، مثلا إن إستخدمت منصة محددة ثم إخترت التسجيل عبر فيسبوك ثم واجهتك مشاكل او Bug فهذا لن يتم إحتسابه لأن المشكلة فقط في طرف ثالث و ليس المنصة بحد ذاتها.
- ألا تجد الخطأ او الثغرة في نسخة Alpha او Beta من منصة محددة، مثلا جوجل تُطلق نظام Android للمطورين قبل إطلاقه رسميا للمستخدمين، إن وجدت ثغرة محددة في نسخة المطورين قد تدفع لك جوجل شيئا او قد تشكرك مثلا، لكنها لن تعتبر الأمر ثغرة أمنية و تتعامل معها كثغرة حرجة.
- ان تكون ثغرة من نوع Zero-day اي ثغرة لم يتم إكتشافها من قبل في المنصة و حدث خلل فقط أعاد الثغرة للواجهة، بل يجب على الثغرة ان تكون شيئاً جديدا ( ليس دائما في الحقيقة، أحيانا يتم قبول حتى الثغرات غير zero-day ).
يوجد الكثير أيضا، إذ يوجد لائحة قواعد توضح أنواع الثغرات التي تستقبلها كل منصة يمكنك البحث عنها و مراجعتها.
كيف تتصرف حين تجد ثغرة تلائم كل ما سبق ؟
في حالة وجدت ثغرة تحترم كل ما سبق فقد حان الوقت الآن للتبليغ عليها و ربما الحصول على بعض المقال من خلالها. لفعل ذلك سيتوجب عليك إتخاذ مسلكين :
أولا الإستعانة بموقع Bugcrowd ثم التوجه مباشرة الى صفحة الـ Bug Bounty Program الخاصة بالمنصة التي إكتشفت ثغرة فيها، في الصفحة ستجد مجموعة من الإيميلات و الرسائل الإلكترونية او Contact Forms يمكنك ملأها مباشرة من أجل إنشاء إتصال بينك و بين مسؤولي الموقع. لاحقا ستتوصل بإجابة من أصحاب الموقع يستفسرون فيها بعض الإستفسارات مثل متى تحدث الثغرة، كيف إكتشفتها، الأدوات المسؤولة و غيرها، و سيألونك إن كان لديك حل جاهز مسبقا للثغرة، سيتقبلون كل أجوبتك و سيقومون بتصحيحها او تطبيق ما جاء من تعليمات من طرفك لتصحيحها، سيخبرونك أيضا بالثمن الذي ستدفعه تلك المنصة مقابل هكذا معلومات و ستدفع لك بعد تصحيح الثغرة ببضعة أيام بالطريقة التي تريد و ستضيف أيضا إسمك في الـ Hall of Fame الخاص بالأشخاص الذين إكتشفو ثغرات في المنصة.
أما المسلك الثاني فهو الا تجد صفحة الـ Bounty Program في موقع Bug Crowd، و هذا يعني ان المنصة ربما لا تستقبل طلبات الثغرات او ليس لديها نظام Bounty بالطبع، هنا ستحتاج الى وسيط ليتوسط لك مع الشركة أشهرها موقع Zerodium، ما الذي سيفعله هذا الوسيط بالضبط انه سيقوم بالإطلاع على الثغرة التي توصلت إليها و سيقوم بشرائها منك بمقابل مادي ( لن تحصل على إسمك في الـ Hall of Fame بعد تصحيح الثغرة و هذه أكبر سلبية في الوسطاء ). ستقوم بعدها المنصة بالتواصل مباشرة بالشركة و تبليغهم بالثغرة و بطريقة تصحيحها. معظم الشركات حاليا بدأت تستعين بوسيط مثل Zerodium.
و الآن يا صديقي بت تعرف ما الذي يجب عليك ان تفعله حين تصادف ثغرة او خطأ او مشكل برمجي في موقع او منصة محددة، فبالتوفيق لك في مسارك.