در این مقاله قصد داریم به زبانی ساده حملات DoS و DDoS را برای شما توضیح داده و شما را با آنها آشنا کنیم، رستورانی را در نظر بگیرید که اساس کار آن سفارشات تلفنی است، افراد مختلف روزانه با رستوران تماس گرفته و غذای مورد نظر خود را سفارش میدهند، رستوران نیز پس از دریافت سفارش غذا را آماده کرده و ارسال میکند، حال شخصی با هدف ایجاد اختلال در کار رستوران به طور مداوم از طریق تماس تلفنی (اساس کار رستوران ما) سفارشات دروغین برای رستوران ارسال میکند و در عین حال باعث اشغال شدن خطوط تلفن و در نتیجه مانع دریافت سفارشات واقعی میشود…
اساس کار حملات DoS و DDoS نیز مشابه مثال بالاست، وبسایتهایی که به صورت روزانه با آنها سروکار داریم در رایانههایی به نام سرور قرار دارند، سرور در اصطلاح به یک کامپیوتر سرویسدهنده اطلاق میشود، هنگامی که شما آدرس سایتی را در مرورگر خود تایپ میکنید در واقع یک درخواست به سرور وبسایت مورد نظر ارسال میکنید و سرور نیز پس از پردازشهای مورد نیاز دستور شما را اجرا کرده و به درخواست شما پاسخ میدهد، در ادامه با همیار آیتی همراه باشید تا به زبانی ساده با این نوع حملات آشنا شویم.
همانگونه که گفتیم سرورها خود کامپیوتر هستند، بنابراین توانایی پردازش تعداد خاصی از دستورات را در یک واحد زمانی مشخص دارند و اگر تعداد زیادی کاربر به صورت همزمان درخواست خود را به سرور ارسال کنند این احتمال وجود دارد که سرور توانایی پردازش تمامی دستورات را نداشته و در نهایت از دسترس خارج (Down) شود.
ارسال درخواستهای زیاد به طور همزمان به سرور میتواند باعث از دسترس خارج شدن آن شود، این درخواستها میتوانند به صورت عمد یا غیر عمد صورت بگیرند، فرض کنید یک سرور به طور همزمان توانایی پردازش و مدیریت ۲۰ کاربر را داشته باشد، این بدین معناست که اگر در یک زمان مشخص ۳۰ کاربر به طور همزمان به وبسایت مراجعه کنند باعث ایجاد اختلال و در نهایت Down شدن سرور وبسایت میشوند.
این امکان وجود دارد که هر ۳۰ درخواستی که به سرور ارسال شده از طرف کاربران واقعی بوده و حملهای در کار نباشد و در نقطهی مقابل این احتمال وجود دارد که شخص یا اشخاصی به صورت عمد قصد از کار انداختن سرور را داشته باشند و به همین دلیل به طور همزمان تعداد زیادی درخواست به سرور ارسال میکنند در این حالت اصطلاحا میگوییم حملات DoS یا DDoS بر روی سرور در حال انجام است.
حملهی DoS چیست؟
حملهی DoS یا Denial of Service (محرومسازی از سرویس) به نوعی از حملات اطلاق میشود که در آن تعداد زیادی درخواست به سرور قربانی ارسال شده و باعث مصرف زیاد از منابع سختافزار (حافظه، پردازنده، پهنای باند، پایگاه داده و…) میشود و در نهایت به دلیل حجم بالای پردازشها، عملیات سرور با Overload مواجه شده و سرویس از دسترس خارج (Down) میشود.
اگر این حملات با استفاده از چندین رایانه و به صورت هماهنگ انجام شود، در اصطلاح به آن DDoS یا Distributed Denial Of Service (محرومسازی از سرویس توزیع شده) میگویند، در این حالت به سرویسی که زیر بار حمله قرار دارد Primary Target و به سایر سیستمهایی که برای انجام حملات هماهنگ استفاده میشوند Secondary Target گفته میشود.
تفاوت DoS و DDoS در چیست؟
همانگونه که در پاراگراف بالا توضیح دادیم، اگر این حملات توسط یک سیستم انجام شود DoS و اگر به صورت هماهنگ و از طریق چندین سیستم انجام گیرد DDoS نامیده می شود، به کارگیری حملات DDoS این امکان را به مهاجم میدهد تا بتواند حملهی خود را به مراتب مخربتر و در ابعاد بزرگتری انجام دهد چرا که وجود چندین سیستم باعث میشود تا شناسایی و ردیابی مهاجم اصلی بسیار مشکل و تا حدودی غیر ممکن شود.
اما در نقطهی مقابل، حملات DoS تا حدودی سادهتر میباشند، به صورتی که شما حتی با استفاده از کامپیوتر شخصی خودتان میتوانید این حملات را به صورت محدود بر روی وبسایت (سرور) مورد نظرتان انجام دهید!
همانگونه که در تصویر بالا مشاهده میکنید، حملهی داس تنها از طریق یک کامپیوتر و حملهی دیداس از طریق چندین رایانه کنترل میشود، به همین دلیل است که حملات داس معمولا تهدید چندانی برای سرور محسوب نمیشوند (در صورتی که مبدا حمله رایانهی قدرتمندی نباشد) اما حملات دیداس میتوانند به راحتی باعث از پا در آمدن سرور یک وبسایت شوند.
نشانههای حملات DDoS روی سرور چیست؟
- کند بودن سرور در پاسخگویی به درخواستها
- عدم اتصال صفحات داینامیک به دیتابیس
- مصرف بیش از حد منابع سخت افزاری سرور
- اختلال در سرویسهای جانبی (ایمیلها و…)
- افزایش ناگهانی و غیرعادی درخواستها
هر چند نشانههای بالا همیشه به معنای حملات DDoS نبوده و میتواند ناشی از افزایش طبیعی ترافیک در شبکه باشد، اما بهتر است با مشاهدهی چنین علائمی لاگهای شبکه را مورد بررسی قرار دهید تا در صورت لزوم مانع گسترش این حملات شوید.
تکنیکهای حملات DoS چیست؟
- حملات نظیر به نظیر
- حمله بر مبنای پهنای باند
- حملات سیلآسای درخواست سرویس
- حملات بر مبنای جریانی از SYN
- حملات بر مبنای جریانی از ICMP
- حملات بر مبنای جریانی از اپلیکیشنها
- حملات DoS دائمی و DDoS
چگونه میتوان از حملات DDoS جلوگیری کرد؟
آسیبپذیری در این مورد میتواند بیشتر ناشی از ضعف در امنیت سرور باشد، بنابراین اگر شما صاحب وبسایتی هستید و دچار چنین حملاتی میشوید میتوان گفت مشکل از وبسایت شما نبوده و مرتبط با سرور است، در چنین شرایطی از مدیر سرور خود بخواهید سختافزار و نرمافزار موجود را به آخرین نسخه ارتقا دهد و در صورت امکان آیپیهای مشکوک را توسط فایروال شبکه بلاک کند و در نهایت آخرین بستههای امنیتی موجود را نصب کند، هرچند مدیر سرور شما با مانیتورینگ وضعیت شبکه و بررسی لاگهای سرور میتواند به وجود چنین حملاتی پی ببرد، اما باید بدانید در برخی شرایط و در حملات گسترده عملا جلوگیری از این مشکلات پس از وقوع حمله کاری دشوار خواهد بود.