كيفية اختبار عملية حجب الخدمة على النظام | How to perform DoS Pentesting [Part 1]

Cyber Attacks
في شهر فبراير عام 2000 وثقت أول عملية DoS attack حدثت على مواقع Amazon, eBay مما كلفهم خسائر كبيرة وقد قام بها مخترق كندي يملك 15 سنه ومن وقتها وقد انتشر مصطلح هجمات الـ DoS لذا دعنا نتعرف عليها فى هذا المقال
Mostafa Tamam
Sept. 30, 2021, 3:28 p.m.
mostafa_tamam
كيفية اختبار عملية حجب الخدمة على النظام  | How to perform DoS Pentesting [Part 1]

ما هو الـ DoS attack؟

 

في شهر فبراير عام 2000 وثقت أول عملية DoS attack حدثت على مواقع Amazon, eBay مما كلفهم خسائر كبيرة وقد قام بها مخترق كندي يملك 15 سنه ومن وقتها وقد انتشر مصطلح هجمات الـ DoS, ببساطة هجمات الـ DoS هدفها حجب الخدمة عن أي موقع يقدم خدمات على الأنترنت عن طريق إرسال سيل من الـ Packets الغير ضرورية على السيرفر بسرعة عالية مما يسبب حدوث بطئ في الخدمات ويسبب حرمان المستخدمين الآخرين من استخدام الموقع أو تعطيل السيرفر في حالات أخرى.

كيفية حدوث هذا الهجوم؟

مبدأ هذا الأسلوب بسيط ويتلخص في أن المهاجم يقوم بإغراق الأجهزة المزودة بسيل من الطلبات والأوامر التي تفوق قدرة السيرفر على معالجة هذه البيانات، أي سيرفر له قدره معينة على استقبال الطلبات ومعالجتها في الثانية تختلف على حسب قوة أداء السيرفر فعند تجاوز عدد هذه الطلبات حدود قدره السيرفر مما يسببه عملية DoS attack ستكون الاستجابة للطلبات أبطأ بكثير من المعتاد وسيتم تجاهل بعض أو كل، طلبات المستخدمين تمامًا.


تأتي هجمات الحرمان من الخدمة بأشكال وأحجام مختلفة فمن الممكن أن يفعلها شخص أو من الممكن تكون مجموعة من الأشخاص أو المؤسسات ويسمى DDoS attack واساس عمل هذا الهجوم على اعتماده على أكثر من مصدر لكي لا يحدث حجب للـ IPs بسبب Firewall, عادة الغرض من هذا الهجوم هو تشويه سمعة الشركة وتعريضها لخسائر مادية أو استغلال الثغرات المحتملة فى النظام مثل Buffer Overflow, ICMP Flood, SYN Flood من الممكن أيضا استخدام Zommbie Network لإجراء هجوم DDoS على الشبكة فتعتمد هذه الطريقة على أن المهاجم يستخدم هذه الشبكة التي أصابها من قبل وتحويل الـ Traffic إلى الضحية الجديدة.

تطبيق عملية DoS Penetration Testing

كما وضحنا فكره الـ DoS attack فكما يقال الوقاية خير من العلاج فمن مهامك كـ Cyber Security Professional أن تتطبق أعلى معايير الأمان واختبار النظام من الثغرات وعمل إدارة للمخاطر لتجنب حصول الهجوم ومن هنا من أحد مهامك أن تتطبق عملية Dos Pentesting منظمة على الشبكة لمعرفة قوة نظامك ومدى قدرته على تلقي الطلبات ومعالجتها وإذا حدث هجوم ما هي الخطط المتبعة كالـ Threat intelligence ومرحلة الـ Backup وسرعة الانتقال إلى سيرفر آخر، فكل هذه السبل طريقها إنشاء عملية DoS Pentesting قوية ومنظمة، دعنا لا نطيل ونبدأ بتطبيق العملية....

1- أداة hping3

هي أداة أداره للـ Packets مفتوحة المصدر من Kali Linux، تمكن المستخدم من إرسال حزم كـ (TCP و UDP و ICMP)، بالإضافة إلى السرعة التي يتم إرسالها بها وتسمح بإنشاء طلبات GET و POST لتطبيق الهجوم وتستخدم أيضا في :

  • Firewall testing
  • Advanced port scanning
  • Network testing, using different protocols, TOS, fragmentation
  • Manual path MTU discovery
  • Advanced traceroute, under all supported protocols
  • Remote OS fingerprinting
  • Remote uptime guessing
  • TCP/IP stacks auditing

- مثال: يمكن للمهاجم استخدام الأداة لبعت فيض من الـ Packets غير منتهية على Port 80 باستخدام


 

- سنلاحظ هنا بعد إرسال الـ Packets أنه قد حدث شلل في السيرفر لتخطي قدرته على المعالجة
 



إذا قمت بتتبع حركة الشبكة عن طريق أداة Wirwshark ثم قمت بعمل فلتر للـ IPs لترى الـ Traffic باستخدام ipp. addr==192.168.1.107 سترى جميع الـ Packets
 


- هناك أيضا أدوات مشهورة في عملية الـ DoS Pentesting ننصحك بها وهما Hulk أو GolenEye وهما أيضا أدوات مفتوحة المصدر وستقوم بنفس العملية بسهولة ويسر

- أيضا إذا كنت تستخدم Cloud System كـ AWS أو GCP تتيح لك خاصية VPC Network أن تراقب كل الـ Traffic بشكل احترافي

ملاحظات هامة

من المهم السؤال هنا هل تنفذ هذه العملية داخل بيئة الخدمات الحساسة التي تمس المستخدمين أم بيئة مخصوصة بعمل هذه العملية؟
- فإذا كنا ننفذ هذه العملية على بيئة المنتج التي تخص المستخدمين فمن الممكن تفعيل العملية على أجزاء وفترات زمنية مختلفة لتجنب إزعاج المستخدمين
- أما إذا كانت هناك بيئة عمل محددة لا تمس المستخدمين فلا حرج في إتمام العملية كاملة بشكل منظم
- أيضا لا بد من التواصل المباشر من فريق Pentester مع فريق الدعم الخاص بالشركة فكلما كان الرد أسرع ستتجنب حدوث المشاكل

 

ولكن يبقى هنا السؤال هل هذا الاختبار يشكل خطر على الخدمات؟

من الناحية النظرية المخاطر متغيرة من موقف لآخر ولكن مجملا من الممكن أن تسبب بطء الاستجابة وإذا نفذت بشكل خاطئ من الممكن أن يحدث شلل في النظام ويجب ألا ننسى أن تنفيذ اختبار pentest بشكل صحيح يقلل من المخاطر بشكل كبير مقارنة بحدوث هجوم

وإلى هنا نكون قد انتهينا من الجزء الأول من عملية DoS Penetration Testing ولنا لقاء آخر بإذن الله عن تطبيق أكثر من طريقة لعمل هذا الاختبار وما هي أهم الحلول المتبعة لتجنب هذا النوع من الهجوم.


DoS Pentest Penetration Testing