DDoS
DitakTeam
🔴 حمله DDoS (دیداس) چیست؟
حمله دیداس به انگلیسی DDoS مخفف (distributed denial of service) به زبان ساده یعنی سرازیر کردن تقاضاهای زیاد به یک سرور و استفاده بیش از حد از منابع (پردازنده، پایگاه داده، پهنای باند، حافظه و…) به طوری که سرویس دهی عادی آن به کاربرانش دچار اختلال شده یا از دسترس خارج شود. (به دلیل حجم بالای پردازش یا به اصطلاح overload شدن عملیات های سرور)، در این نوع حمله ها در یک لحظه یا در طی یک زمان به صورت مداوم از طریق کامپیوترهای مختلف که ممکن است خواسته یا حتی ناخواسته مورد استفاده قرار گرفته باشند، به یک سرور (با آی پی مشخص) درخواست دریافت اطلاعات ارسال میشود و موجب از دسترس خارج شدن سرور یا به اصطلاح Down شدن سرور میشود.

🔹طبقه بندی حملات DDoS
این شیوه هک به ۵ نوع مهم و کلی دسته بندی میشوند. البته ممکن است شیوه های دسته بندی دیگری هم به صورت جزئی تر و یا با تعداد بیشتری برای حملات دیداس در مقالات راهنما استفاده شوند.
نوع ۱ : Buffer Overflow Attack
حمله سر ریز بافر هنگامی رخ می دهد که میزان اطلاعات نوشته شده در بافر بیش از میزان پیش بینی شده برای آن در مموری سیستم باشد. حمله کننده می تواند دیتای کنترل کننده مسیر اجرای برنامه را بازنویسی کرده و با سرقت و در دست گرفتن کنترل برنامه کدهای برنامه دلخواه خود را به جای پروسه های سرور به اجرا در آورد.
نوع ۲ : Ping of Death Attack
در تمامی قرن بیستم این شیوه یکی از مشهورترین حملات DDoS بود. اما امروزه به طور کلی بلوکه شده و جلوی آن گرفته شده است. حمله کننده به عمد یک پاکت یا بسته IP بزرگتر از ۶۵۵۳۶ بایت را که توسط پروتکل IP مجاز شناخته می شود ارسال می کرد. در این پروتکل فایل در مبدا به بسته های اطلاعاتی خرد شده و پس از ارسال به کامپیوتر مقصد، بسته های اطلاعاتی در مقصد سر هم شده و بر روی کامپیوتر مقصد فایل دوباره ساخته می شود. اما سیستم عامل مقصد از عهده سر هم کردن پاکت های اطلاعاتی با اندازه بزرگتر از استاندارد که حمله کننده به صورت عمدی ساخته و ارسال کرده بود، بر نمی آمد و قفل می کرد، ریاستارت میشد یا حتی به راحتی کرش میکرد.
نوع ۳ : Smurf Attack
این حمله شیوهای برای ایجاد یک ترافیک معنی دار و آزار دهنده بر روی شبکه کامپیوتری قربانی است. در این شیوه حمله کننده سیستم قربانی را با ارسال پیام های Ping قلابی غرق می کند. در این روش، جانی تعداد بسیار زیادی ترافیک ICMP echo یا همان پینگ تولید می کند و آنها را از منابع ناشناس و قلابی به سمت هاست قربانی ارسال می کند. نتیجه هم تعداد فراوانی پاسخ پینگ است که باعث نابودی سیستم قربانی می شود.
نوع ۴ : Tear Drop
این حمله شامل ارسال قطعات پاکتهای اطلاعاتی روی هم افتادهای است که بزرگتر از اندازه معمول هستند اما کاملا انباشته نشدهاند. این بستههای ناقص الخلقه در سیستم عاملهای مختلف به دلیل باگهای موجود در کدهای دوباره سازی بستههای اطلاعاتی مرتبط با پروتکل TCP/IP، باعث کرش کردن سیستم میشوند.
نوع ۵ : SYN Attack
حمله کننده درخواستهای TCP SYN جعلی برای سرور قربانی ارسال می کند. سرور تمامی منابع را به کار میگیرد تا درخواستهای دریافتی پاسخ دهد. اما مشکل اینجا است که درخواست دهندهها قلابی هستند! هر پاسخ تا تایید توسط درخواست دهنده به صورت یک اتصال نیمه باز بر روی سرور باقی می ماند. سرور در پاسخ یک بسته TCP/SYN-ACK برای درخواست دهنده ارسال میکند و منتظر پاسخ از آدرس فرستنده می ماند. به هر حال به دلیل عدم وجود فرستنده واقعی، هیچ گاه پاسخی بر نمیگردد. و کم کم اتصالات نیمه باز تمام اتصالات ممکن سرور را می مکند و اشباع می کنند. پس سرور از پاسخ گویی به دیگر کاربران معمول خود باز می ماند.

🔹علائم حمله DDoS چیست؟
خوشبختانه یکی از موارد مثبت این نوع حملات این است که به سرعت میتوان به نحوه عملکرد سرویس مشکوک شد و جلوی اختلال بیشتر را گرفت، پس از اینکه سروری مورد حمله ddos قرار میگیرد ممکن است با توجه به اهداف و شیوه به کار رفته یک قسمت از منابع یا همه قسمتهای آن دچار اختلال شود، در زیر لیستی از این علائم را ذکر میکنیم.
۱ - کندی در پاسخگویی به درخواستها
سروری که مود حمله قرار گرفته باشد، معمولا خیلی کند و با وقفه به درخواست بارگذاری صفحات پاسخ می دهد، البته این نشانه همیشه دلیل حمله ddos نیست، چرا که این اتفاق به طور طبیعی نیز برای سرورها و سایتهای با بازدید بالا ممکن است رخ دهد یا کنترل این امر بستگی زیادی به قدرت سخت افزاری سرور و تنظیمات آن دارد.
۲ - عدم اتصال به پایگاه داده
گاهی ممکن است صفحات استاتیک که نیازی به اتصال پایگاه داده ندارند به راحتی بارگذاری شوند، ولی اتصال به پایگاه داده برای صفحات داینامیک برقرار نشود، در چنین مواقعی معمولا پیام تکمیل ظرفیت اتصال به پایگاه داده یا too many connection ظاهر خواهد شد، بهترین کار در چنین حالتی این است که با تنظیم یک دستور هِدر 500 HTTP، به رباتهای جستجوگر بگوییم که سایت ما فعلا دچار مشکلی است و بعدا مراجعه نمائید! چرا که در غیر اینصورت با وجود down بودن دیتابیس سرور، ربات ها با دریافت وضعیت HTTP 200، صفحه خالی را ایندکس میکنند که این حالت اصلا مناسب نیست، در php این کار را با دستورات header می توان انجام داد.
header('HTTP/1.0 500 Internal Server Error');
۳ - مصرف بیش از حد منابع سرور
یکی دیگر از نشانههای حمله ddos میتواند مصرف بیش از حد و غیر طبیعی منابع سرور مثل حافظه و یا پهنای باند در یک بازه زمانی کوتاه باشد.
۴ - افزایش انفجاری درخواستها
یکی دیگر از نشانه های حمله ddos، وجود شمار زیادی درخواست http به سرور است که با مشاهده فایل log و قسمت آمار، می توان به این موضوع پی برد.
۵ - اختلالات در سرویسهای جانبی نظیر ایمیل
گاهی مواقع حملات ddos سرویسهای جانبی یک سرور نظیر سرویس ایمیل را هدف میگیرند، در این مواقع ارسال و دریافت ایمیل ممکن است به کندی صورت گیرد یا دچار وقفه شود، البته همانطور که گفتیم، هر وقفه و اختلالی به معنی حمله ddos نیست، تنها به عنوان یک نشانه می توان آن را محسوب کرد.
🔹یکی از نکات بسیار مهم در خصوص محافظت و جلوگیری از DDoS بر روی وبسایت این است که از سرور های آنتی دیداس استفاده شود؛ این سرور ها نه صرفا با یک یا دو فایروال سخت افزاری بلکه با قرارگرفتن در یک شبکه محافظت شده از وب سایت شما در برابر حملات DDoS محافظت میکنند.