من هو مطور نقاط الاستغلال (EXPLOIT DEVELOPMENT)

يمكن أن تكون عملية الاستغلال عبارة عن برنامج أو جزء من التعليمات البرمجية مصممة للاستفادة من نقاط الضعف في التطبيقات ويتم ذلك عادة بواسطة المخترقين بهدف تثبيت البرامج الضارة في نهاية المطاف. أو شن هجمات مثل برامج الفدية أو DDos او أو غيرها من عمليات استغلال Blockchain حيث تقوم بتخزين أصول التشفير وغيرها من المعلومات القيمة. وهذا ما يجعل تطوير البرمجيات وخاصة Exploit أمر بالغ الأهمية لسلامة الأصول الرقمية والمعلومات الحساسة الموجودة على أنظمة الكمبيوتر حيث يعتبر تطوير مثل هذه البرمجيات هو في الأساس عملية اكتشاف الثغرات الأمنية في البرامج والتطبيقات وتحديد كيفية استخدامها لتجاوز نظام مستهدف.
من هو Exploit Development
يتفاعل مطور الاستغلال مع التطبيق تمامًا كما يفعل المستخدم ، بإدخال مدخلات مشوهة وخبيثة في التطبيق في محاولة لتحديد نقاط الضعف القابلة للاستغلال.
عادة ما يتم استخدام بعض البرمجيات المشتركة بين المطورين مثل system monitoring و debuggers و disassemblers و Decompilers.
مراقبة النظام System Monitoring.
من خلال مراقبة النظام يستطيع متطور البرمجيات من تحديد الثغرات الأمنية المحتملة دون إجراء التحليل التعليمات البرمجية أو محاولة استغلال إحدى التطبيقات. توفر أدوات المراقبة معلومات حول سلوك التطبيق ويمكن أن توفر نظرة عميقة حول كيفية تشغيله والاستجابة للأحداث المختلفة، حيث يمكن استخدام تلك المعلومات لتحديد الفقرات الأمنية وبناء كود برمجي لاستغلالها.
الأدواتDecompilers, Disassemblers And Debuggers
عندما يتم تجميع البرنامج يتم تحويله من الكود المصدر إلى كود التجميع ثم إلى كود Binary وتعمل أداة Decompilers وعلى عكس هذه العملية حيث يولد تعليمات برمجية من كود الآلة مما يجعل من الممكن قراءة وفهم التعليمات البرمجية الخاصة بالتطبيق. ويعتبر ال Debuggers مصممة للمساعدة في تصحيح أخطاء البرامج من خلال السماح للمطور بإيقاف تنفيذ التعليمات البرمجية مؤقتا وفحص الحالة الحالية للمتغيرات والذاكرة وما إلى ذلك. تعتبر مثل هذه الأدوات مفيدة لتطوير برمجيات Exploits لأنها تجعل من الممكن استكشاف إحدى التطبيقات والبحث عن الثغرات الأمنية التي يمكن استغلالها بعد ذلك.
تدقيق البرامج وإيجاد الثغرات.
قبل أن يتمكن مطور برمجيات Exploits استغلال الثغرة، يجب أن يعرفوا أنها موجودة تشمل الطرق الرئيسية التالية الإجراءات الثلاث لتدقيق البرامج والعثور على نقاط الضعف:
اختبار White Box.
يعتبر اختبار الصندوق الأبيض عن لديك معرفة كاملة وإمكانية الوصول إلى جميع التعليمات البرمجية والمستندات الأخرى المتعلقة بتطبيق أو جزء من التعليمات البرمجية، وعاد ما يكون أسرع بكثير من نهج التجربة والخطأ. ويرجع هذا السبب بأن المطور يعرف ما يجب اختباره، ومع ذلك يحتاج المطور إلى فهم اللغة التي تمت كتابة التطبيق بها لإجراء اختبار الصندوق الأبيض.
اختبار Black Box.
يتم إجراء اختبار الصندوق الأسود دون معرفة العناصر الداخلية للتطبيق حيث يتفاعل المطور مع التطبيق تماما كما يفعل المستخدم بإدخال مدخلات مشوهة وخبيثة في التطبيق في محاولة لتحديد نقاط الضعف القابلة للاستغلال. بداية تطلب اختبار الصندوق الأسود معرفة خاصة باللغة التي تمت كتابة التطبيق بها ولكن غالبا ما يكون هناك بطء في هذا الاختبار مقارنة مع الصندوق الأبيض.
اختبار Gray Box.
يعتبر اختبار الصندوق الرمادي هو الطريقة المتوسطة بين الصندوق الأبيض والصندوق الأسود حيث يتم الوصول إلى بعض المعلومات الداخلية للتطبيق ولكن ليس كلها، ويتم الوصول إلى هذه المعلومات عن طريق الاستماع إلى البرامج المساعدة والتي تعمل على تحديد الأخطاء والثغرات في التطبيق.
لماذا يعتبر مطور برمجيات Exploits مهم للأمن السيبراني.
يعد تطوير هذا النوع من البرمجيات بالغ الأهمية في عصر الأمن السيبراني سريع التطور وأصبح مجرمو الإنترنت أكثر تعقيدا وتظهر نواقل الهجوم الجديدة في كثير من الأحيان وتحتاج المؤسسات إلى العمل بنشاط لتحديد نقاط الضعف وإغلاقها قبل أن يتمكن المهاجم من استغلالها. ويعد تطوير برمجيات Exploits أداة مفيدة لأنها تساعد على بناء فهم حول كيفية عمل ثغرة أمنية معينة والتحقق من التصحيح للثغرة الأمنية وهذا يؤدي إلى تخفيف التهديد و القضاء عليها قبل اكتشافه من قبل المخترقين السيئون السمعة .
كيف يمكن ان تكون مطور Exploits.
توفر بعض المواقع المختصة في مجال الأمن السيبراني بعض الدورات الخاصة في هذا المجال حيث سوف يتم وضع روابط إلى تلك المواقع إذا كنت مهتم بأن تكون واحد من مطوري أدوات الاستغلال المحترفين.