هجمات DDoS لطبقة التطبيق, وكيف يمكن التخفيف من حدتها

دوس (رفض الخدمة الموزع) ودوس (الحرمان من الخدمة) يمكن تصنيف الهجمات على نطاق واسع إلى ثلاث فئات بناء على طبقات نموذج OSI الذي تستهدفه: طبقة الشبكة (طبقة 3), طبقة النقل (طبقة 4), وطبقة التطبيق (طبقة 7).
طبقة 3 والطبقة 4 عادة ما تكون الهجمات أقل تعقيدا–على الرغم من أنه قد يكون من الصعب جدا التخفيف من حدتها–وتتضمن إغراق الشبكة وطبقة النقل بحركة المرور, إثقال كاهل موارد النظام المستهدف وجعله غير متاح للمستخدمين الشرعيين. يمكن شن هذه الأنواع من الهجمات باستخدام تقنيات مختلفة مثل فيضانات اللجنة الدولية لشؤون المفقودين, فيضانات TCP SYN, أو فيضانات UDP.
فيضان اللجنة الدولية لشؤون المفقودين على سبيل المثال, هي طبقة 3 الهجوم الذي يتم فيه تدفق عدد كبير من حزم ICMP إلى النظام المستهدف, جعله غير مستجيب. فيضان TCP SYN, من جهة أخرى, هي طبقة 4 الهجوم الذي يستغل الطرق التي يتم بها إنشاء اتصالات TCP.
في هجوم فيضان SYN, يرسل المهاجم العديد من حزم SYN إلى النظام المستهدف, ولكن لا يرسل حزمة ACK أبدا لإكمال الاتصال. يؤدي هذا إلى قيام النظام بتخصيص الموارد لكل محاولة اتصال مما يؤدي في النهاية إلى زيادة تحميل النظام وجعله غير متاح للمستخدمين الشرعيين. يرسل فيضان UDP عددا كبيرا من حزم UDP إلى نظام مستهدف, تستهلك مواردها وجعلها غير مستجيبة.
هجمات DDoS لطبقة التطبيق
تعد هجمات طبقة التطبيق أكثر تعقيدا ويصعب تخفيفها من الطبقة 3 وطبقة 4 الهجمات. تستهدف هذه الهجمات طبقة التطبيق (طبقة 7) للنظام المستهدف واستغلال الثغرات الأمنية في التطبيق نفسه. طبقة 7 يمكن أن تسبب الهجمات المزيد من الضرر لأنها يمكن أن تؤثر بشكل مباشر على التطبيقات والبنية التحتية الأساسية. لن تكون قادرا على تخفيف الطبقة 7 هجمات DDoS مع الطبقة 3 أو طبقة 4 أدوات مثل جدران حماية الشبكة.
فيضانات HTTP, هجمات Slowloris, وهجمات تضخيم DNS هي طبقة 7 هجمات رفض الخدمة. تتطلب هذه الهجمات دفاعات أكثر تعقيدا مثل جدران الحماية لطبقة التطبيق, أنظمة منع التسلل, و CDN (شبكات توصيل المحتوى).
فيضانات HTTP
يتم تنفيذ هجمات فيضان HTTP باستخدام طلبات GET أو POST لإرباك الخادم المستهدف. عادة ما تكون هجمات الفيضانات باستخدام طلبات GET أبسط وتتطلب موارد أقل لأنها تطلب فقط المعلومات من الخادم. طلبات POST, من جهة أخرى, تتطلب عادة إرسال كميات كبيرة من البيانات.
أحد أسباب صعوبة التخفيف من هجمات فيضان HTTP هو أنها غالبا ما يتم إطلاقها من عدد كبير من المصادر, مما يجعل من الصعب تحديد وحظر جميع الزيارات الضارة. الاضافه الي ذلك, يمكن للمهاجمين استخدام تقنيات مثل انتحال IP لإخفاء هوياتهم الحقيقية وجعل تتبع مصدر هجماتهم أكثر صعوبة.
يمكن أن يكون الدفاع ضد هجمات فيضان HTTP معقدا. تتطلب الأنواع المختلفة من الهجمات استراتيجيات تخفيف مختلفة. تتضمن الدفاعات الشائعة ضد هجمات فيضان HTTP تحديد المعدل, القائمه السوداء, وجدران حماية تطبيقات الويب. لكن, يمكن أن تكون هذه التقنيات كثيفة الاستخدام للموارد وقد لا تكون كافية لإحباط الهجمات الأكثر تعقيدا.
هجمات Slowloris
Slowloris هو نوع من هجمات الفيضانات التي يتم من خلالها استهداف الطريقة التي تتعامل بها خوادم الويب مع اتصالات العميل. يعمل هذا الهجوم عن طريق فتح عدد كبير من الاتصالات بالخادم, لكن إرسال الطلبات بمعدل بطيء, إبقاء كل اتصال مفتوحا لأطول فترة ممكنة. يمكن أن يستهلك هذا النوع من الهجوم جميع الموارد المتاحة للخادم ويسمح للمهاجمين باستهلاك وحدة المعالجة المركزية, ذاكرة, أو عرض النطاق الترددي للشبكة, الخ. دون حتى تفعيل الحد من المعدل النموذجي وآليات تصفية حركة المرور المستخدمة بشكل شائع لاكتشاف وحظر أنواع أخرى من هجمات DDoS.
لتنفيذ هجوم Slowloris, يستخدم المهاجمون عادة البرامج النصية أو الأدوات التي ترسل طلبات HTTP إلى خادم, ولكن تأخير تعمد إرسال الطلبات اللاحقة. تم تصميم الطلب ليبدو وكأنه طلب شرعي, ولكن برأس غير مكتمل يحافظ على الاتصال مفتوحا إلى أجل غير مسمى. بمرور الوقت, سيكون لدى الخادم العديد من الاتصالات المفتوحة في انتظار بيانات إضافية من العميل, تسبب في توقف الخادم عن الاستجابة لحركة المرور المشروعة.
قد يكون من الصعب اكتشاف هجمات Slowloris بسبب تصميمها السري وعرض النطاق الترددي المنخفض نسبيا. هذا يجعلها أداة فعالة للمهاجمين الذين يرغبون في تخريب خوادمهم دون إثارة تنبيهات أو إثارة الشك. للدفاع ضد هجمات Slowloris, يمكن لخوادم الويب تنفيذ العديد من الإجراءات المضادة. على سبيل المثال, الحد من عدد الاتصالات التي يمكن إنشاؤها من عنوان IP واحد أو تعيين مهلة للطلبات غير المكتملة. تحتوي بعض جدران حماية تطبيقات الويب وخدمات تخفيف DDoS على حماية مضمنة ضد هجمات Slowloris, استخدام خوارزميات يمكنها اكتشاف مثل هذه الزيارات وحظرها في الوقت الفعلي.
طبقة 7 التخفيف من DDoS
تحديد السعر
يتضمن تحديد السعر تحديد حد لعدد الطلبات التي يمكن تقديمها من عنوان IP معين أو وكيل مستخدم في فترة زمنية محددة. المفهوم مشابه جدا لتحديد المعدل في الطبقة 3 ولكن يجب تنفيذه في الطبقة 7.
الغرض من تحديد المعدل هو منع المهاجم من التحميل الزائد على تطبيق الويب بعدد كبير من الطلبات, التسبب في تعطيل الخادم. يمكن تنفيذ تحديد المعدل في طبقات مختلفة من بنية تطبيق الويب الخاص بك, على خادم ويب, موازن التحميل, أو جدار حماية التطبيق. تتضمن عمليات التنفيذ عادة تتبع عدد الطلبات المقدمة بواسطة عنوان IP معين أو وكيل مستخدم وحظر المزيد من الطلبات عند الوصول إلى حد محدد مسبقا.
يتمثل أحد الأساليب الشائعة لتنفيذ تحديد المعدل في تطبيقات الويب في استخدام البرامج الوسيطة أو المكونات الإضافية التي تتعقب عدد الطلبات التي يقدمها كل عميل وتحظر الطلبات الإضافية عند تجاوز الحد. إلى هذه المكونات الإضافية يمكن تكوينها لتطبيق سياسات مختلفة لتحديد المعدل بناء على عوامل مثل نوع الطلب, وكيل المستخدم, أو عنوان IP للعميل.
على سبيل المثال, يمكن لسياسة تحديد المعدل البسيطة أن تحد من الطلبات من عنوان IP واحد إلى حد أقصى 10 طلبات في الدقيقة. إذا تجاوز العميل هذا الحد, يتم حظر الطلبات اللاحقة حتى انتهاء الفترة.
تتوفر منتجات تحديد معدل طبقة التطبيق لخوادم الويب والخدمات السحابية الشائعة, منها:
اباتشي
يحتوي Apache على العديد من الوحدات التي يمكن استخدامها لتحديد المعدل, مثل mod_limitipconn, مما يحد من عدد الاتصالات المتزامنة من عنوان IP معين, و mod_qos, الذي يوفر ضوابط جودة الخدمة المختلفة بما في ذلك تحديد المعدل.
علاوة على ذلك, جدار حماية تطبيق الويب ModSecurity لديه ميزة تحديد المعدل التي يمكن أن تمنع العملاء الذين يتجاوزون حدا محددا. بالإضافة إلى الوحدات المذكورة أعلاه, يوفر Apache أيضا mod_evasive. هذه وحدة نمطية يمكن استخدامها لمعدل الحد وحظر العملاء الذين يتجاوزون حدا محددا. اكتشاف العملاء المارقين وحظرهم باستخدام مجموعة متنوعة من التقنيات, بما في ذلك تتبع IP ووكيل المستخدم.
نجينكس
يوفر Nginx وحدة ngx_http_limit_req. يمكن استخدام هذا للحد من معدل الطلب من عملاء معينين بناء على عنوان IP أو عوامل أخرى. تستخدم هذه الوحدة خوارزمية دلو الرمز المميز لتخصيص الرموز المميزة لكل عميل بناء على نهج تحديد المعدل. إلى جانب وحدة ngx_http_limit_req, يوفر Nginx أيضا وحدة ngx_http_limit_conn. يمكن استخدام هذا للحد من عدد الاتصالات من عملاء أو عناوين IP محددة. تستخدم هذه الوحدة خوارزمية حاوية الرمز المميز لتخصيص الرموز المميزة بناء على نهج تحديد المعدل.
معهد الدراسات الإسماعيلية
خدمات معلومات الإنترنت من Microsoft (معهد الدراسات الإسماعيلية) يتضمن وحدة تحديد IP الديناميكية يمكن استخدامها لتحديد المعدل. يمكن تكوين هذه الوحدة لحظر الطلبات من عناوين IP التي تتجاوز الحدود المحددة مسبقا ويمكنها أيضا توفير تنبيهات وسجلات للمراقبة. بالإضافة إلى وحدة الحد من IP الديناميكي, يوفر IIS أيضا وحدة تصفية الطلبات التي يمكن استخدامها للحد من معدل الطلب لعملاء محددين بناء على معايير مختلفة مثل عنوان IP, وكيل المستخدم, وطريقة الطلب.
AWS
خدمات أمازون ويب (AWS) يقدم العديد من الخدمات التي يمكن استخدامها لتحديد الأسعار, منها AWS WAF مع تحديد المعدل كميزة.
يوفر AWS Shield حماية DDoS بما في ذلك القواعد المستندة إلى السعر التي يمكنها حظر الطلبات من عناوين IP فوق حد معين. إضافة إلى AWS WAF وAWS Shield, تقدم AWS أيضا موازن التحميل المرن AWS. يتضمن العديد من نهج تحديد المعدل التي يمكن تكوينها لحظر العملاء عبر الحدود المحددة مسبقا.
أسمانجوني
يقدم Microsoft Azure العديد من الخدمات التي يمكن استخدامها لتحديد المعدل, بما في ذلك بوابات تطبيق Azure. يتضمن جدار حماية لتطبيق الويب يمكن تكوينه للحد من معدل الطلبات الواردة. الاضافه الي ذلك, عروض Azure Front Door ميزة تحديد المعدل التي يمكنها حظر الطلبات من عناوين IP أعلى من حد محدد مسبقا. بالإضافة إلى Azure Application Gateway وAzure Front Door, يقدم Azure أيضا Azure جدار حماية Azure. يمكن استخدام هذا لحد المعدل وحظر العملاء الذين يتجاوزون حدا محددا.
GCP
Google Cloud Platform (GCP) يقدم درع سحابي, جدار حماية تطبيق ويب مع إمكانات تحديد المعدل التي يمكنها حظر الطلبات من العملاء التي تتجاوز حدا محددا.
يمكن لمنتجات تحديد معدل طبقة التطبيق هذه التخفيف بشكل فعال من هجمات فيضان HTTP عن طريق الحد من عدد الطلبات من العملاء المحتالين. لكن, من المهم أن يتم تكوينها بشكل صحيح لعدم حظر حركة المرور المشروعة واستخدامها جنبا إلى جنب مع تدابير الأمان الأخرى مثل جدران الحماية وخدمات التخفيف من DDoS لتوفير حماية شاملة ضد هجمات DDoS.
مهلات الطلبات غير المكتملة
فيما يلي بعض طرق تخفيف طبقة تطبيق Slowloris المدرجة ل Apache, نجينكس, وخوادم الويب IIS, وموازنات التحميل والميزات الإضافية ل AWS, أسمانجوني, وخدمات GCP:
اباتشي
بالإضافة إلى الوحدات المذكورة أعلاه, يوفر Apache أيضا وحدة نمطية, mod_reqtimeout, يمكن استخدامها لتعيين مهلة للطلبات الواردة. إذا أرسل العميل طلبا يستغرق وقتا أطول من المهلة المحددة, سيغلق الخادم الاتصال. هذا سيمنع هجمات البطء.
نجينكس
إلى جانب ngx_http_limit_conn وحدة ووحدة ngx_http_limit_req, يوفر Nginx أيضا وحدة ngx_http_request الخاصة به. يمكن استخدام هذا للحد من الوقت الذي يستغرقه خادم الخادم لمعالجة الطلب. إذا استغرق خادم الخادم وقتا أطول من المهلة المحددة, سيقوم Nginx بإغلاق الاتصال.
معهد الدراسات الإسماعيلية
إضافة إلى الوحدات النمطية لقيود IP الديناميكية وتصفية الطلبات, يوفر IIS أيضا برنامج تشغيل وضع kernel HTTP.sys. يتيح لك ذلك تعيين مهلة للطلبات الواردة. إذا أرسل العميل طلبا يستغرق وقتا أطول من المهلة المحددة, سيغلق الخادم الاتصال.
AWS
بالإضافة إلى AWS WAF وAWS Shield, بالإضافة إلى ذلك ، توفر AWS موازن التحميل المرن, الذي يتضمن العديد من قواعد مهلة الاتصال التي قد يتم تكوينها لإغلاق الاتصالات التي تستغرق وقتا أطول من حد محدد مسبقا.
أسمانجوني
بالإضافة إلى Azure Application Gateway وAzure Front Door, بالإضافة إلى ذلك ، يمنح Azure Azure Load Balancer, الذي يتضمن خاصية مهلة الخمول القابلة للتكوين والتي يمكن استخدامها لإغلاق الاتصالات التي قد تكون خاملة لفترة محددة مسبقا.
GCP
Google Cloud Platform (GCP) يوفر العديد من بدائل مهلة الاتصال لخدماته, والتي تشمل موازنة تحميل السحابة, الذي يتضمن خاصية مهلة قابلة للتكوين يمكن إستخدامها لإغلاق الاتصالات التي تستغرق وقتا أطول من حد محدد مسبقا.
استنتاج
ختاما, يمكن تصنيف هجمات DDoS و DoS بناء على طبقات نموذج OSI التي تستهدفها, مثل طبقة الشبكة (طبقة 3), طبقة النقل (طبقة 4), وطبقة التطبيق (طبقة 7).
بينما طبقة 3 وطبقة 4 الهجمات تغمر الشبكة وطبقات النقل بحركة المرور, طبقة 7 الهجمات أكثر تعقيدا وتستغل الثغرات الأمنية في التطبيقات نفسها. تعد فيضانات HTTP وهجمات Slowloris أمثلة على الطبقة 7 هجمات رفض الخدمة. تشمل التدابير المضادة ضد هذه الهجمات تحديد المعدل, القائمه السوداء, وجدران حماية تطبيقات الويب. يتطلب تحديد الهجمات واحتوائها في الوقت الفعلي شاملا, استراتيجية دفاعية متعددة الطبقات تتضمن المراقبة, الكشف, وقدرات الاستجابة.
الاضافه الي ذلك, يمكن للمهاجمين تخصيص تقنياتهم وتخصيص هجماتهم للتهرب من الكشف والتهرب من التدابير الأمنية. ذلك, من الضروري أن تنفذ المنظمات خطة شاملة, استراتيجية دفاعية متعددة الطبقات تتضمن المراقبة, الكشف, وقدرات الاستجابة لتحديد الهجمات واحتوائها بسرعة في الوقت الفعلي. قد يشمل ذلك استخدام خوارزميات التعلم الآلي المتقدمة والتحليلات السلوكية لاكتشاف أنماط حركة المرور الضارة وحظرها.
إعلان إخلاء المسؤولية
وجهات النظر, المعلومات, أو الآراء المعبر عنها هي آراء المؤلف فقط ولا تمثل بالضرورة آراء صاحب العمل أو المنظمات التي ينتمي إليها.
المعلومات الواردة في هذا المنشور هي لأغراض المعلومات العامة فقط. يتم توفير المعلومات من قبل فرهاد مفيدي وبينما يسعى جاهدا للحفاظ على المعلومات حديثة ودقيقة, لا يقدم أي تعهدات أو ضمانات من أي نوع, صريح أو ضمني, فيما يتعلق بالاكتمال, دقه, موثوقيه, ملاءمة أو توفر الموقع. فرهاد لا يقدم أي تعهدات أو ضمانات. أو أي معلومات, المنتجات أو الرسومات ذات الصلة الواردة في أي منشور لأي غرض من الأغراض.
أيضًا, يمكن استخدام الذكاء الاصطناعي كأداة لتقديم الاقتراحات وتحسين بعض المحتويات أو الجمل. الأفكار, الافكار, الاراء, والمنتجات النهائية أصلية ومن صنع الإنسان من قبل المؤلف.