حمله DDoS چیست؟ نحوه کار آنها + استراتژی های حفاظتی
حمله انکار سرویس توزیع شده (DDoS)، تلاشی غیرقانونی برای در دسترس نکردن یک وب سایت با بارگذاری بیش از حد سرور آن با مقادیر بالای ترافیک جعلی است.
هجوم درخواست های اتصال مخرب، بازدیدکنندگان قانونی را در پشت یک صف ترافیک بی کاهش قرار می دهد که از بارگذاری وب سایت جلوگیری می کند.
اهداف فقط شامل وب سرورها نمی شوند، یک حمله DDoS می تواند هر سرویس متصل به اینترنت مانند شبکه ها، پایگاه های داده، دستگاه های تلفن همراه و حتی عملکردهای خاص برنامه را مختل کند.
حمله DDoS چگونه کار می کند؟
یک حمله DDoS با به خطر انداختن یک سری از دستگاه های اینترنت اشیا (اینترنت اشیا) آغاز می شود. هر دستگاه اینترنت اشیا هدفمند به بدافزار آلوده می شود تا بتوان آن را از راه دور کنترل کرد و سپس به سایر دستگاه های تشکیل شده متصل کرد و یک بات نت ایجاد کرد.
هیچ محدودیتی برای اندازه یک بات نت وجود ندارد، آنها می توانند در سراسر جهان گسترش یابند. با یک بات نت به اندازه کافی بزرگ، درخواست های ترافیک مخرب به ترکیب خود ادامه می دهند و اگر همه آنها به سمت یک هدف واحد هدایت شوند، رم سرور و ذخایر CPU هیچ شانسی برای مقابله با تقاضای ترافیک نخواهند داشت.
تفاوت بین حمله DoS و حمله DDoS چیست؟
در یک حمله DoS، درخواست های اتصال مخرب تنها از یک دستگاه در معرض خطر ارسال می شوند، اما در یک حمله DDoS، ترافیک مخرب از چندین دستگاه در معرض خطر ارسال می شود.

انواع حملات DDoS
همه حملات DDoS یک هدف واحد دارند - بارگذاری بیش از حد منابع آنلاین تا حدی که پاسخگو نباشند.
سه دسته اصلی از حملات DDoS وجود دارد:
1. حملات DDoS مبتنی بر حجم
حمله مبتنی بر حجم، مستقیم و حجم زیادی از ترافیک در منابع وب. میزان این حملات بر حسب بیت بر ثانیه (Bps) اندازه گیری می شود. حملات مبتنی بر حجم شامل حملات سیل ICMP، حملات سیل UDP و سایر حملات بسته جعلی است.
حمله سیل ICMP چیست؟
درخواست های اکو پروتکل پیام کنترل اینترنت (ICMP) معمولا برای تشخیص وضعیت سلامت آنها به دستگاه های شبکه ارسال می شود. هر دستگاه مورد نظر با یک پاسخ پژواک پاسخ می دهد و وضعیت فعلی خود را مشخص می کند. یک حمله سیل ICMP (همچنین به عنوان حمله سیل پینگ شناخته می شود) تعداد زیادی از درخواست های اکو را ارسال می کند که منجر به تعداد بسته های پاسخ به همان اندازه می شود و دستگاه مورد نظر را تحت فشار قرار می دهد.
برای اینکه حمله سیل ICMP امکان پذیر باشد، مهاجم باید آدرس IP هدف را بداند. سه دسته از حملات ICMP وجود دارد که با روش بازیابی آدرس IP شناسایی می شوند:
- محلی هدفمند فاش شده - این نوع حمله DDoS نیاز به آگاهی از آدرس IP هدف دارد. یک حمله سیلی از ترافیک را به یک رایانه یا دستگاه خاص می فرستد.
- روتر فاش شد - این نوع حمله DDoS نیاز به آگاهی از آدرس IP داخلی یک روتر محلی دارد. سپس درخواست های شبکه برای مختل کردن ارتباطات شبکه به روتر ارسال می شود.
- پینگ کور - شامل یک کمپین شناسایی برای کشف آدرس IP یک هدف برای امکان پذیر کردن حمله DDoS است.
حمله سیل UDP چیست؟
یک حمله سیل UDP از توالی پاسخ طبیعی سرور به بسته های پروتکل داده کاربر (UDP) سوء استفاده می کند. در شرایط عادی، پاسخ سرور به بسته های UDP در هر پورت یک فرآیند دو مرحله ای است:
- سرور بررسی می کند که آیا برنامه های در حال اجرا مرتبط با دیتاگرام های درخواستی از پورت مشخص شده استفاده می کنند یا خیر.
- هنگامی که چنین برنامه هایی یافت نمی شوند، سرور با یک بسته ICMP - "Destination Unreachable" پاسخ می دهد.
در طول یک حمله سیل UDP، یک سرور هدف با چنین درخواست هایی مواجه می شود و باعث می شود بیش از حد بارگذاری شود و سرویس را به ترافیک قانونی رد کند.
چگونه حملات سیل UDP را کاهش دهیم
روش استاندارد کاهش حمله سیلاب UDP با محدود کردن نرخ پاسخ بسته های ICMP است. با این حال، این استراتژی دفاعی دو عیب عمده دارد:
- چنین روش فیلتراسیون باینری احتمالا درخواست های بسته قانونی را نیز رد می کند.
- اگر حمله سیل UDP به اندازه کافی بزرگ باشد، جدول حالت و فایروال سرور غرق می شوند. این منجر به یک گلوگاه فاجعه بار از بسته های UDP می شود که در بالادست سرور مورد نظر رخ می دهد.
یک روش بهتر برای کاهش حملات سیل UDP، استقرار مکانیسم های دفاعی در بالادست به جای سطح فیزیکی است. این امر از اتکا به پهنای باند توسط بسته های ناشی از حمله سایبری جلوگیری می کند.
2. حملات DDoS پروتکل یا لایه شبکه
حملات DDoS پروتکل یا لایه شبکه حجم بالایی از بسته ها را به ابزارهای مدیریتی و زیرساخت های شبکه هدایت می کند. حجم این حملات بر حسب بسته در ثانیه (PPS) اندازه گیری می شود. این نوع حملات شامل سیل SYN و حملات Smurf DDoS است.
حمله سیل SYN چیست؟
در طول شرایط عملیاتی عادی، یک مشتری یک SYN را به سرور ارسال می کند که سپس با یک پیام SYN+ACK پاسخ می دهد. در حالی که سرور منتظر پاسخ SYN+ACK از مشتری است، اطلاعات وضعیت در یک بافر TCP ذخیره می شود.
در طول یک حمله سیل SYN، حجم بالایی از بسته بندی های SYN از آدرس های IP جعلی به سرور ارسال می شوند که هرگز پاسخ SYN-ACK را در هنگام درخواست سرور ارائه نمی دهند. نتیجه این است که بافر TCP به حد مجاز خود می رسد و باعث می شود تمام اتصالات پورت باز غرق شوند، که به نوبه خود منجر به رد هرگونه اتصال TCP جدید توسط سرور می شود.
چگونه حملات سیل SYN را کاهش دهیم
سه روش برای کاهش حملات سیل SYN وجود دارد:
1. بازنویسی اتصالات TCP نیمه باز ارشد
برای جلوگیری از ترکیب درخواست های عقب ماندگی، قدیمی ترین اتصال TCP نیمه باز باید هر زمان که عقب ماندگی پر شده بود، بازیافت می شد. این فرآیند اتصال چرخه ای تنها در صورتی حملات SYN را کاهش می دهد که بتوان اتصالات را سریعتر از پر کردن عقب ماندگی برقرار کرد.
افزایش محدودیت عقب ماندگی، می تواند زمان کافی برای بازیافت قدیمی ترین اتصال TCP قبل از اتمام صف بک لاگ برای سرور خریداری کند.
2. محدودیت عقب ماندگی را افزایش دهید
برای افزایش محدودیت صف عقب ماندگی، سیستم عامل به حافظه کافی برای حفظ نیازهای پردازش افزایش یافته یک عقب ماندگی بزرگتر نیاز دارد. در غیر این صورت، ممکن است عملکرد مختل شود.
اگر پهنای باند حافظه کافی است، حداکثر تعداد اتصالات نیمه باز ممکن را افزایش دهید.
با افزایش صف عقب ماندگی، سیستم باید برای مدت زمان طولانی تری در طول حمله سیل SYN کار کند و زمان بیشتری برای شناسایی و مسدود کردن آدرس IP جعلی که حمله را راه اندازی می کند، فراهم می کند.
3. کوکی های TCP SYN را ایجاد کنید
>یک کوکی TCP SYN سطح بیشتری از امنیت پروتکل را در متعادل کننده های بار و موتورهای DDoS ایجاد می کند. این روش کاهش، نیاز به بافر TCP و محدودیت های ذخیره سازی مربوط به آن را حذف می کند. جدول حالت با یک تابع ریاضی جایگزین می شود که شماره توالی TCP مرتبط با هر پاسخ SYN-ACK را محاسبه می کند.
هر بسته ACK دریافتی با شماره توالی TCP مورد انتظار محاسبه شده توسط تابع ریاضی مقایسه می شود. همسویی درخواست اتصال قانونی را تأیید می کند که سپس به صورت عادی ایجاد می شود.
قبل از پیاده سازی کوکی های SYN بر روی سرور، حتما قابلیت های پردازش آن را بررسی کنید. برخی از سرورهای x86 قادر به پاسخگویی به نیازهای پردازش محاسبات توالی TCP به اندازه کافی سریع نیستند تا نیازهای اتصال جعلی را برآورده کنند.
4. از فایروال استفاده کنید
یک فایروال می تواند جایگزین کوکی های SYN و نگرانی از منابع سرور بیش از حد شود، اگر بتواند جدول وضعیت را نظارت کند و اتصالات جدید را فراتر از یک حد خاص مسدود کند. خوشبختانه اکثر سرورهای مدرن قادر به این کار هستند.
فایروال های هوشمند می توانند با نظارت بر بسته های SYN در ثانیه، حمله سیل SYN را شناسایی کنند و با آزاد کردن اتصالات نیمه باز برای حفظ در دسترس بودن پاسخ دهند. یک فایروال توانمند در e وجود دارد که اتصال به کاربران قانونی را در طول یک حمله با حجم بالا حفظ می کند.
با این حال، فایروال های درجه پایین تر دارای فیلترهای حمله SYN ابتدایی هستند که ممکن است جلسات قانونی TCP را در طول حمله سیل SYN رد کنند.
حمله Smurf DDoS چیست؟
در طول حمله Smurf، یک پینگ نامشروع از سرور مورد نظر با جعل آدرس IP آن به رایانه های شبکه ارسال می شود و هر گیرنده را مجبور می کند با یک به روز رسانی عملیاتی پاسخ دهد.
از آنجایی که چنین پینگ هایی با دست دادن تأیید نمی شوند، می توان آنها را بدون محدودیت ترکیب کرد. نتیجه این است که رایانه های شبکه ای یک حمله DDoS را علیه سرور خود راه اندازی می کنند.
چگونه حملات Smurf DDoS را کاهش دهیم
اکثر بردارهای حمله ای که حمله Smurf را ممکن ساخت، اکنون اصلاح شده اند. با این حال، برخی از سیستم های قدیمی هنوز در برابر این تاکتیک DDoS خود آسیب پذیر هستند.
یک راه حل سریع کاهش این است که تمام آدرس های پخش IP را در هر فایروال و روتر شبکه غیرفعال کنید. این تنظیم احتمالا در روترهای جدید غیرفعال می شود، اما روترهای قدیمی احتمالا آن را فعال می کنند.
3. حملات لایه کاربردی
در طول یک برنامه، حمله DDoS بعدی، که به عنوان حمله لایه 7 (L7) نیز شناخته می شود، بعدا بالای مدل OSI هدف قرار می گیرد. اینجاست که درخواست های بسته با ترافیک بالا - HTTP ،GET و HTTP Post رخ می دهد.
علائم هشدار حمله DDoS
یک وب سایت بارگذاری غیرمعمول کند می تواند شواهدی از وقوع حمله DDoS باشد. اگر این به یک پیام غیرقابل اعتماد سرور 503 پیشرفت کند، احتمالا یک حمله DDoS رخ می دهد.

در این مرحله، تأیید فوری بیشتر بسیار مهم است. این را می توان با ایجاد گزارشی از تمام درخواست های سرور فعال از رابط ورود به سیستم فرمان (CLI) به دست آورد.
در طول حمله DDoS، گزارش فرمان چندین اتصال به یک پورت سرور را از یک آدرس IP نشان می دهد.
