سؤال أنا تحت DDoS. ماذا بإمكاني أن أفعل؟


هذا ال السؤال الكنسي حول التخفيف من DoS و DDoS.

لقد وجدت ارتفاعًا كبيرًا في حركة المرور على موقع الويب الذي أستضيفه اليوم ؛ أحصل على آلاف الاتصالات في الثانية وأرى أنني أستخدم كل النطاق الترددي المتاح البالغ 100 ميغابت في الثانية. لا يمكن لأي شخص الوصول إلى موقعي لأن جميع الطلبات تنتهي ، ولا يمكنني تسجيل الدخول إلى الخادم لأن SSH تضيع أيضًا! حدث ذلك عدة مرات من قبل ، وفي كل مرة استغرق الأمر ساعتين واختفى من تلقاء نفسه.

من حين لآخر ، يحتوي موقعي على الويب على مشكلة أخرى متميزة ولكنها ذات صلة: متوسط ​​حمولة خادمي (والذي يبلغ عادةً حوالي 0.25) صواريخ تصل إلى 20 أو أكثر ولا يمكن لأي شخص الوصول إلى موقعي تمامًا مثل الحالة الأخرى. كما يذهب بعيدا بعد بضع ساعات.

إعادة تشغيل الخادم الخاص بي لا يساعد ؛ ما الذي يمكنني القيام به لجعل موقعي متاحًا مرة أخرى وماذا يحدث؟

بالمقابل ، وجدت مرة أنه لمدة يوم أو يومين ، في كل مرة بدأت فيها خدمتي ، حصلت على اتصال من عنوان IP معين ثم تعطل. بمجرد أن بدأت مرة أخرى ، حدث هذا مرة أخرى وتحطمت مرة أخرى. كيف هو مماثل ، وماذا يمكنني أن أفعل حيال ذلك؟


171
2017-08-19 09:14


الأصل


لقد تابعت هذا بعد قراءة (إنشاء "مساعدة ، أنا الحصول على DDOS-ed!" السؤال؟). أنا فقط أريد أن أقول Nice Work !!! - AngryWombat
انظر أيضا security.stackexchange.com/a/792/2379 - Pacerier


الأجوبة:


أنت تعاني من هجوم رفض الخدمة. إذا رأيت حركة مرور قادمة من شبكات متعددة (عناوين IP مختلفة على شبكات فرعية مختلفة) ، فإنك تحصل على رفض الخدمة الموزع (DDoS) ؛ إذا كان كل شيء قادمًا من نفس المكان الذي لديك فيه خدمة مدنية قديمة. قد يكون من المفيد التحقق ، إذا كنت قادرًا ؛ استخدم netstat للتحقق. هذا قد يكون من الصعب القيام به ، على الرغم من.

يقع رفض الخدمة عادةً في فئتين: يستند إلى عدد الزيارات ، ويعتمد على الحمل. العنصر الأخير (مع خدمة التعطل) هو DoS قائم على استغلال وهو مختلف تمامًا.

إذا كنت تحاول تحديد نوع الهجوم الذي يحدث ، فقد تحتاج إلى التقاط بعض الزيارات (باستخدام wireshark أو tcpdump أو libpcap). يجب عليك ، إن أمكن ، ولكن أيضًا أن تدرك أنك ستستحوذ على عدد كبير من الزيارات.

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

الحركة القائمة على

إذا كنت تحت عنوان DoS قائم على المرور ، فإنك بذلك تجده هناك الكثير من الحركة إلى الخادم الخاص بك أن اتصاله بالإنترنت مشبع تمامًا. هناك معدل خسارة مرتفع للحزم عند إجراء اختبار ping لخادمك من مكان آخر ، و (بناءً على طرق التوجيه المستخدمة) أحيانًا ، قد تشاهد أيضًا زمن انتقال عالٍ جدًا (يكون ping عاليًا). هذا النوع من الهجوم عادة ما يكون DDoS.

في حين أن هذا الهجوم "صاخب" بالفعل ، ومن الواضح ما يحدث ، فمن الصعب على مسؤول الخادم التخفيف (ومستحيل بشكل أساسي بالنسبة لمستخدم الاستضافة المشتركة للتخفيف). ستحتاج إلى مساعدة من موفر خدمة الإنترنت ؛ أخبرهم بأنك تحت DDoS وقد يكونون قادرين على المساعدة.

ومع ذلك ، فإن معظم مزودي خدمات الإنترنت ومقدمي خدمات النقل سوف يدركون بشكل استباقي ما يجري ونشر طريق مسدود لخادمك. ما يعنيه هذا هو أنها تنشر طريقًا إلى خادمك بأقل تكلفة ممكنة ، عبر 0.0.0.0: أنها تجعل المرور إلى الخادم الخاص بك لم تعد قابلة للتوجيه على الإنترنت. هذه المسارات عادةً / 32 ثانية ويتم إزالتها في نهاية المطاف. هذا لا يساعد على الاطلاق. الهدف هو حماية شبكة مقدمي خدمات الإنترنت من الطوفان. طوال المدة ، سيفقد الخادم الخاص بك الوصول إلى الإنترنت بشكل فعال.

الطريقة الوحيدة التي يمكن لمزود خدمة الإنترنت (أو أنت ، إذا كان لديك AS الخاص بك) أن يساعدها هي إذا كانوا يستخدمون حركات المرور الذكية التي يمكنها اكتشاف حركة DDoS المحتملة والحد منها. ليس كل شخص لديه هذه التكنولوجيا. ومع ذلك ، إذا كانت الزيارات قادمة من شبكة أو شبكتين ، أو مضيف واحد ، فقد يكون بإمكانهم أيضًا منع حركة المرور التي تنتظركم.

بالمختصر، هناك القليل جدا يمكنك القيام به حول هذه المشكلة. أفضل حل على المدى الطويل هو استضافة خدماتك في العديد من المواقع المختلفة على الإنترنت والتي يجب أن تكون DDoSed بشكل فردي وفي وقت واحد ، مما يجعل DDoS أكثر تكلفة بكثير. تعتمد استراتيجيات هذا على الخدمة التي تحتاجها للحماية ؛ يمكن حماية DNS من خلال خوادم أسماء موثوقة متعددة ، SMTP مع سجلات MX الاحتياطية ومبادلات البريد ، و HTTP مع DNS round-robin أو multihoming (لكن بعض التحلل قد يكون ملحوظًا طوال المدة).

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

إذا كنت قادراً على القيام بذلك ، فكر في استخدام شبكة توزيع المحتوى (CDN) مثل Akamai و Limelight و CDN77 ، أو استخدام خدمة تنقية DDoS مثل CloudFlare أو Prolexic. تتخذ هذه الخدمات تدابير فعالة للتخفيف من هذه الأنواع من الهجمات ، ولديها أيضًا نطاقًا تردديًا كبيرًا في العديد من الأماكن المختلفة التي لا يمكن إغراقها بشكل عام.

إذا قررت استخدام CloudFlare (أو أي CDN / proxy آخر) تذكر أن تخفي عنوان IP لخادمك. إذا اكتشف أحد المهاجمين عنوان IP ، يمكنه مرة أخرى وضع DDoS لخادمك مباشرة ، وتجاوز CloudFlare. لإخفاء عنوان IP ، لا يجب على خادمك الاتصال مباشرة مع خوادم / مستخدمين آخرين إلا إذا كانوا آمنين. على سبيل المثال ، لا يجب على خادمك إرسال رسائل إلكترونية مباشرة إلى المستخدمين. لا ينطبق ذلك إذا قمت باستضافة كل المحتوى الخاص بك على CDN وليس لديك خادم خاص بك.

أيضا ، بعض VPS ومقدمي خدمات الاستضافة أفضل في تخفيف هذه الهجمات من الآخرين. بشكل عام ، كلما كانوا أكبر ، كلما كانوا أفضل في هذا ؛ مزود جيد جدًا ، ولديه الكثير من عرض النطاق الترددي سيكون أكثر مرونة بشكل طبيعي ، وسيكون بإمكان فريق عمل شبكة عمل نشط ومجهز بالكامل الاستجابة بسرعة أكبر.

على أساس الحمل

عندما تواجه حزمة DDoS قائمة على الحمل ، ستلاحظ أن متوسط ​​الحمل مرتفع بشكل غير طبيعي (أو وحدة المعالجة المركزية أو ذاكرة الوصول العشوائي أو استخدام القرص ، اعتمادًا على النظام الأساسي الخاص بك وخصائصه). على الرغم من أن الخادم لا يبدو أنه يقوم بأي شيء مفيد ، إلا أنه مشغول للغاية. في كثير من الأحيان ، سيكون هناك كميات وفيرة من الإدخالات في السجلات تشير إلى ظروف غير عادية. في كثير من الأحيان هذا يأتي من الكثير من الأماكن المختلفة وهو DDoS ، ولكن هذا ليس بالضرورة هو الحال. لا يوجد حتى أن يكون الكثير من مضيفين مختلفين.

ويستند هذا الهجوم على جعل خدمتك تفعل الكثير من الاشياء باهظة الثمن. قد يكون هذا شيئًا مثل فتح عدد كبير من اتصالات TCP وإجبارك على الحفاظ على الحالة بالنسبة لهم ، أو تحميل ملفات كبيرة أو متعددة بشكل مفرط إلى خدمتك ، أو ربما إجراء عمليات بحث باهظة بالفعل ، أو القيام بأي شيء فعلاً مكلفًا للغاية. حركة المرور هي في حدود ما خططت له ويمكن أن تتخذ ، ولكن أنواع الطلبات التي يتم إجراؤها مكلفة للغاية بحيث لا يمكن التعامل مع الكثير منها.

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

أول شيء قد تتمكن من القيام به هو استخدام جدار الحماية لإسقاط حركة المرور. هذا ليس دائمًا ممكنًا ، ولكن إذا كان هناك خاصية يمكنك العثور عليها في حركة المرور الواردة (يمكن أن يكون tcpdump مناسبًا لهذا إذا كانت حركة المرور خفيفة) ، يمكنك إسقاطها في جدار الحماية ولن يتسبب ذلك في حدوث مشكلات. والشيء الآخر الذي ينبغي عليك فعله هو إصلاح الخطأ في خدمتك (الاتصال بالبائع والاستعداد لخوض تجربة دعم طويلة).

ومع ذلك، إذا كانت مشكلة في التكوين ، فابدأ هناك. قم بخفض تسجيل الدخول إلى أنظمة الإنتاج إلى مستوى معقول (اعتمادًا على البرنامج ، يكون هذا هو الإعداد الافتراضي عادةً ، وعادةً ما يتضمن التأكد من أن مستويات "debug" و "verbose" من التسجيل تكون متوقفة ؛ إذا كان كل ما يفعله المستخدم يتم تسجيله بدقة و التفاصيل الدقيقة ، فإن التسجيل الخاص بك مطول للغاية). بالإضافة إلى، تحقق من عملية الطفل وحدود الطلبربما خنق طلبات واتصالات لكل IP وعدد عمليات الطفل المسموح بها ، حسب الاقتضاء.

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

استغلال القائم

إذا خدمتك في ظروف غامضة تحطم بسرعة بالغة بعد طرحها ، خاصة إذا كان بإمكانك إنشاء نمط من الطلبات التي تسبق التعطل والطلب غير معتاد أو لا يتطابق مع أنماط الاستخدام المتوقعة ، فقد تواجه اختبارًا مستهدفًا قائمًا على أساس الاستغلال. هذا يمكن أن يأتي من عدد قليل من مضيف واحد فقط (مع أي نوع من الاتصال بشبكة الإنترنت) ، أو العديد من المضيفين.

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

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

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


183
2017-08-19 09:14



فيما يتعلق بفقرك الأخير ، وماذا لو استفدت من الاستغلال د دوس؟ كيف يمكنك تتبع وتوقفه؟ - Pacerier


إذا كنت مؤسسة ، فلديك العديد من الخيارات. إذا كنت شخصًا صغيرًا مثلي ، فاستأجر خادمًا صغيرًا أو خادمًا مخصصًا لخدمة موقع ويب صغير ، يمكن أن تصبح التكلفة باهظة بسرعة.

من واقع خبرتي ، أعتقد أن معظم موفرو VPS المخصصين لن يقوموا بإعداد قواعد خاصة بجدار الحماية لخادمك فقط. لكن في الوقت الحاضر ، لديك بعض الخيارات.

CDN

إذا كنت تقوم بتشغيل خادم ويب ، فضع في اعتبارك وضعه خلف CDN مثل CloudFlare أو Amazon CloudFront.

CDNs غالية الثمن. للحفاظ على التكلفة تحت السيطرة ، تخدم الملفات الكبيرة (الصور الكبيرة والصوت والفيديو) مباشرة من الخادم الخاص بك بدلا من خلال CDN. ومع ذلك ، يمكن أن يعرض هذا عنوان IP الخاص بالخادم للمهاجمين.

سحابة خاصة

غالبًا ما تكون السحابات الخاصة حلول مشروعات باهظة الثمن ، ولكن تكاليف Amazon VPC لا تكلفها شيئًا لإعدادها. ومع ذلك ، فإن عرض النطاق الترددي في الأمازون بشكل عام باهظة الثمن. إذا كنت تستطيع ذلك ، فيمكنك إعداد مجموعة أمان VPC's وشبكة ACL لمنع حركة المرور قبل وصولها على حالتك. يجب عليك حظر جميع المنافذ باستثناء منفذ خادم TCP.

ملاحظة لا يزال باستطاعة أحد المهاجمين مهاجمة منفذ خادم TCP. إذا كان هو خادم ويب ، ففكر في استخدام شيء مثل nginx يستخدم IO غير محجوب ويمكنه التعامل مع عدد كبير من الاتصالات. أبعد من ذلك ليس هناك الكثير يمكنك القيام به بجانب ضمان تشغيل أحدث إصدار من برنامج الخادم.

عندما يتم الهجوم على منفذ TCP الخاص بك وفشل كافة Else

هذا هو الحل الذي قمت بتطويره والذي ينطبق على خوادم الويب غير الخوادم التي لا يمكن أن تختبئ خلف CDN ، مثل WebSocket ، ومحتويات الوسائط / دفق الوسائط. CloudFlare يدعم WebSocket ولكن فقط للمؤسسة في الوقت الحالي.

الهدف هو تغيير منفذ الاستماع الخاص بـ TCP بسرعة كافية بحيث لا تستطيع الروبوتات الاستمرار في العمل ، قل مرة واحدة كل 10 ثوانٍ. يتم إنجاز ذلك باستخدام برنامج وكيل بسيط يقوم بتجوال المنفذ. تسلسل المنافذ pseudo-random ، ولكن يجب أن يستند إلى وقت الخادم. ويجب إخفاء الخوارزمية لحساب وقت الخادم والمنفذ في رمز جافا سكريبت / فلاش العميل. يجب أن يقوم البرنامج أيضًا بتعديل جدار الحماية أثناء تغيير منفذ الاستماع ، ويجب أن يكون جدار الحماية مجديًا. إذا كان شخص ما مهتمًا ، فسوف أحمِّل نصي النصي node.js الذي يعمل مع Amazon ، إلى GitHub.


6
2017-12-05 18:04





تغيير المجال الخاص بك للذهاب إلى ثقب أسود مثل 0.0.0.0 لفترة قصيرة.

تحدث إلى خادمك واعرض ما إذا كان يمكن أن يصدر لك عنوان IP آخر كطريقة مؤقتة للوصول إلى الخادم أو معرفة ما إذا كان لدى الخادم إمكانية الوصول إلى وحدة التحكم عن بعد (مثل أنك تجلس أمامه). من هنا يمكنك معرفة ما إذا كان عنوان IP واحد وحظره من الموقع أو هجوم موزعة.


3
2018-02-26 07:44



من المحتمل أن يؤدي تغيير نظام أسماء النطاقات مثل هذا إلى ضرر أكثر من نفعه. في البداية ، سأقوم بتقليل مدة البقاء في سجل A ، لكن اترك عنوان IP بدون تغيير - حتى يكون لدي عنوان IP جديد للإشارة إليه. - kasperd


عندما تكون تحت DDoS ، يمكنك مهاجمة ISP ، لكن إذا لم يكن لديهم حماية DDoS فمن المحتمل جدا أن تكون خارج الخدمة حتى يتوقف الهجوم. عادة سوف يرون عنوان IP هاجم وإلغاء الشبكة على الموجه المنبع. إذا لم يكن لديك عدد كبير من الزيارات ، فهناك العديد من الخدمات عبر الإنترنت لحماية DDoS حيث تتم إعادة توجيه حركة المرور الخاصة بك وتصفيتها وإرسالها مرة أخرى إلى الخادم الخاص بك.


0
2017-11-18 11:42