آیا تا به حال از وبسایتی بازدید کردهاید که بسیار کند باشد؟ ممکن است آن سایت، قربانی یک حملهٔ DDoS شده باشد. حملات DDoS یکی از رایجترین و مخربترین حملات سایبری است که میتواند بر هر سرویس آنلاین، از مشاغل کوچک گرفته تا شرکتهای بزرگ، تأثیر بگذارد. اما دقیقاً حملات DDoS چیست، چه تفاوتی با حملات DoS دارند و برای محافظت از خود در برابر آنها چه کاری میتوان انجام داد؟ در این مقاله، به این سوالات و موارد دیگر پاسخ خواهیم داد.
فهرست مطالب
– حملهٔ DoS چیست؟
– حملهٔ DDoS چیست؟
– تفاوت بین حملات DoS و DDoS
– یک حملهٔ DDoS چگونه ساختار یافته است؟
– ابزارهای حملات DDoS
– چالشها و مشکلات اصلی در برابر حملات DDoS
– چگونه میتوانیم حملات DDoS را کاهش دهیم؟
– چگونه با حملات DDoS مقابله و از آن جلوگیری کنیم؟
حملهٔ DoS چیست؟
حمله DoS یا Denial of Service، نوعی حملهٔ سایبری است که هدف آن غیرقابل دسترس کردن یا غیرقابل استفاده کردن یک وبسایت یا سرویس آنلاین، با غلبه بر ترافیک یا درخواست است. یک حملهٔ DoS معمولاً از یک رایانه یا دستگاه برای ارسال تعداد زیادی بسته یا داده به سرور مورد نظر استفاده میکند که باعث از کار افتادن یا کاهش سرعت آن میشود. حملهٔ DoS میتواند از آسیبپذیری در نرمافزار یا پروتکل سرور، مانند ارسال بستههای ناقص که باعث ایجاد خطا میشود، سوء استفاده کند.
حملهٔ DoS میتواند انگیزههای مختلفی داشته باشد، مانند ایجاد اختلال در تجارت رقیب، اخاذی از قربانی، اعتراض به یک علت سیاسی یا اجتماعی، یا صرفاً ایجاد شرارت. یک حملهٔ DoS میتواند بر هر سرویس آنلاینی که به اتصال شبکه متکی است، مانند وبسایتها، سرورهای ایمیل، بازیهای آنلاین، سرویسهای ابری و غیره تأثیر بگذارد.
چند نمونه از حملات DoS عبارتند از:
حملهٔ قطره اشکی: این حمله بستههای IP تکه تکه شدهای را ارسال میکند که جمعآوری مجدد آنها توسط سرور مورد نظر غیرممکن است و باعث از کار افتادن یا اختلال در عملکرد آن میشود.
حملهٔ سیل SYN: این حمله با ارسال تعداد زیادی درخواست SYN بدون تکمیل اتصال، از بین بردن منابع سرور و جلوگیری از دسترسی کاربران قانونی به آن، از فرآیند دست دادن TCP سوء استفاده میکند.
Ping of death attack: این حمله بستههای بزرگ ICMP را ارسال میکند که از حداکثر اندازهٔ مجاز فراتر میرود و باعث از کار افتادن یا راهاندازی مجدد سرور مورد نظر میشود.
حملهٔ DDoS چیست؟
حمله DDoS یا Distributed Denial of Service، نوعی حملهٔ DoS است که از چندین رایانه یا دستگاه برای انجام یک حملهٔ هماهنگ علیه سرور هدف استفاده میکند. حملهٔ DDoS معمولاً شامل شبکهای از ماشینهای در معرض خطر به نام رباتها یا زامبیها است که توسط یک بازیگر مخرب به نام botmaster یا مهاجم کنترل میشوند. بات مستر میتواند از روشهای مختلفی برای آلوده کردن و جذب رباتها استفاده کند، مانند بدافزار، فیشینگ، حملات brute-force و غیره. سپس botmaster به رباتها دستور میدهد تا ترافیک یا درخواستهایی را از مکانها و منابع مختلف به سرور مورد نظر ارسال کنند، که کار ردیابی و مسدود کردن
را سختتر میکند.
حملهٔ DDoS میتواند انگیزههای مشابهی با حملهٔ DoS داشته باشد، اما با پتانسیل تاثیر و آسیب بسیار بالاتر. یک حملهٔ DDoS میتواند ترافیک و درخواستهای بسیار بیشتری نسبت به یک منبع DoS ایجاد کند و پهنای باند، CPU، حافظه، فضای دیسک و غیره سرور مورد نظر را تحت تأثیر قرار دهد. حملهٔ DDoS میتواند لایههای مختلف پشته شبکه مانند لایهٔ برنامه را هدف قرار دهد.
چند نمونه از حملات DDoS عبارتند از:
حملهٔ سیل HTTP: این حمله با ارسال تعداد زیادی درخواست HTTP به وب سرور مورد نظر، مصرف منابع آن و جلوگیری از دسترسی کاربران قانونی به آن، لایهٔ برنامه را هدف قرار میدهد.
حملهٔ سیل UDP: این حمله با ارسال تعداد زیادی بستهٔ UDP به پورتهای تصادفی سرور مورد نظر، لایهٔ انتقال را هدف قرار میدهد و آن را وادار میکند تا برنامههایی را که به آن پورتها گوش میدهند بررسی کند و منابع خود را هدر دهد.
حملهٔ سیل ICMP: این حمله با ارسال تعداد زیادی بستهٔ ICMP مانند درخواستهای پینگ به سرور مورد نظر، لایهٔ شبکه را هدف قرار میدهد و پهنای باند و قدرت پردازش آن را مصرف میکند.
تفاوت حملات DoS و DDoS
تفاوت اصلی بین حملات DoS و DDoS، تعداد منابع درگیر در حمله است. یک حملهٔ DoS از یک منبع برای پر کردن ترافیک یا درخواستها به سرور مورد نظر استفاده میکند، در حالی که یک حملهٔ DDoS از چندین منبع برای انجام همین کار استفاده میکند. این منجر به چندین تفاوت دیگر بین حملات DoS و DDoS میشود:
– کاهش سهولت شناسایی: از آنجایی که یک حملهٔ DoS از یک مکان منفرد انجام میشود، شناسایی منشا آن و قطع اتصال آسانتر است. در واقع یک فایروال ماهر میتواند این کار را انجام دهد. از سوی دیگر، یک حملهٔ DDoS از چندین مکان راه دور انجام میشود. پنهان کردن منشا و متوقف کردن یک حملهٔ DDoS بسیار دشوارتر است چون مسدود کردن یک منبع، منبع دیگر را متوقف نمیکند.
– سرعت حمله: از آنجا که یک حملهٔ DDoS از چندین مکان انجام میشود، میتواند بسیار سریعتر از یک حملهٔ DoS که از یک مکان منشا میگیرد، مستقر شود. افزایش سرعت حمله تشخیص آن را دشوارتر میکند، به این معنی که آسیب بیشتر یا حتی یک نتیجهٔ فاجعهبار خواهد بود.
– حجم ترافیک: یک حملهٔ DDoS از چندین ماشین راه دور (زامبیها یا رباتها) استفاده میکند، به این معنی که میتواند حجم بسیار بیشتری از ترافیک را از مکانهای مختلف ارسال کند.
– نحوهٔ اجرا: یک حملهٔ DDoS چندین میزبان آلوده به بدافزار (رباتها) را هماهنگ میکند و یک بات نت ایجاد میکند که توسط یک سرور فرمان و کنترل (C&C) مدیریت میشود. در مقابل، یک حملهٔ DoS معمولاً از یک اسکریپت یا ابزاری برای انجام حمله از یک ماشین استفاده میکند.
ساختار یک حملهٔ DDoS
یک حملهٔ DDoS معمولا شامل سه طرف است: مهاجم، قربانی و واسطه. مهاجم شخص یا گروهی است که حمله را آغاز میکند. قربانی وبسایت یا سرویس آنلاینی است که هدف حمله قرار گرفته است. واسطهها ابزارهایی هستند که توسط مهاجم برای ارسال ترافیک به قربانی استفاده میشود. این دستگاهها اغلب توسط بدافزار در معرض خطر قرار میگیرند یا توسط مهاجم هک میشوند و شبکهای از رباتها به نام بات نت را تشکیل میدهند.
مهاجم باتنت را از طریق یک سرور فرمان و کنترل، مدیریت میکند، که دستورالعملهایی را دربارهٔ زمان و نحوهٔ اجرای حمله به رباتها ارسال میکند. سپس رباتها درخواستها یا بستههایی را مستقیماً یا از طریق تکنیکهای بازتاب یا تقویت به قربانی ارسال میکنند. تکنیکهای بازتاب شامل ارسال درخواستها به سرورهای شخص ثالث است که با پاسخهای بزرگتری به قربانی پاسخ میدهند. تکنیکهای تقویت شامل ارسال درخواستهایی با آدرسهای IP جعلی است که باعث میشود پاسخها بهجای مهاجم به قربانی برسد.
انواع مختلفی از حملات DDoS وجود دارد. رایجترین انواع آن عبارتند از:
– حملات حجمی: هدف این حملات مصرف پهنای باند قربانی با ارسال حجم زیادی از ترافیک به آن است. نمونههایی از حملات حجمیعبارتند از سیل UDP، سیلاب ICMP و حملات تقویت DNS.
– حملات پروتکل: هدف این حملات سوء استفاده از نقاط ضعف پروتکلهایی است که برای ارتباط بین دستگاهها در اینترنت استفاده میشود. نمونههایی از حملات پروتکل عبارتند از سیل SYN، حملات بازنشانی TCP و حملات Ping of Death.
– حملات لایهٔ برنامه: این حملات با ارسال درخواستهایی که نیاز به پردازش یا پاسخهای پیچیده دارند، منابع برنامهای را که روی قربانی اجرا میشود، خسته میکنند. نمونههایی از حملات لایهٔ برنامه عبارتند از سیل HTTP، حملات Slowloris و حملات تزریق SQL.
ابزارهای حملات DDoS
مهاجمان ممکن است از ابزارها یا پلتفرمهای مختلفی برای راهاندازی حملات DDoS استفاده کنند. بعضی از آنها عبارتند از:
باتنتهای استخدامی: اینها خدمات آنلاینی هستند که دسترسی به باتنتها را با پرداخت هزینه ارائه میدهند. همه میتوانند از این سرویسها برای راهاندازی حملات DDoS بدون داشتن مهارتهای فنی یا داشتن هیچ دستگاهی استفاده کنند. نمونههایی از باتنتهای استخدامی شامل: Mirai ، LizardStresser و vDOS هستند.
ابزارهای DDoS: اینها برنامههای نرمافزاری هستند که به کاربران اجازه میدهند بات نتهای خود را ایجاد و کنترل کنند یا مستقیماً از دستگاههای خود ترافیک ارسال کنند. نمونههایی از ابزارهای DDoS عبارتند از LOIC، HOIC، XOIC و Slowloris.
اسکریپتهای DDoS: اینها قطعه کدهایی هستند که میتوانند روی یک دستگاه برای ایجاد ترافیک یا درخواست اجرا شوند. نمونههایی از اسکریپتهای DDoS اسکریپتهای سیل UDP هستند.
چالشها و مشکلات اصلی در برابر حملات DDoS
دفاع در برابر حملات DDoS کار سادهای نیست، چون چالشها و مشکلات زیادی وجود دارد که تشخیص، پیشگیری و کاهش آنها را دشوار میکند. بعضی از آنها شامل موارد زیر هستند:
مقیاس و تنوع: حملات DDoS میتوانند از نظر اندازه، مدت، فرکانس و پیچیدگی متفاوت باشند. برخی از حملات میتوانند ترابیت یا پتابیت ترافیک در ثانیه ایجاد کنند، در حالی که برخی دیگر میتوانند روزها یا هفتهها ادامه داشته باشند. برخی از حملات میتوانند چندین لایه یا اجزای هدف را مورد حمله قرار دهند، در حالی که برخی دیگر میتوانند تاکتیکها یا الگوهای خود را در طول زمان تغییر دهند. این امر پیشبینی، شناسایی و پاسخ مؤثر به حملات DDoS را دشوار میکند.
جعل و پنهان کردن: حملات DDoS میتوانند از تکنیکهایی مانند جعل IP یا رمزگذاری برای مخفی کردن یا تغییر منبع یا ماهیت ترافیک استفاده کنند. این امر ردیابی، فیلتر کردن یا مسدود کردن ترافیک مخرب را بدون تأثیر بر ترافیک قانونی دشوار میکند.
آسیبهای جانبی: حملات DDoS نه تنها بر هدف بلکه بر گرهها یا شبکههای میانی که ترافیک را حمل میکنند هم تأثیر میگذارد. این میتواند باعث ازدحام، اختلال یا تخریب زیرساخت یا خدمات اینترنتی شود که توسط چندین کاربر یا نهاد به اشتراک گذاشته شدهاست. این همچنین میتواند منجر به خسارات مالی، تعهدات قانونی یا آسیبهای اعتباری برای طرفهای متضرر شود.
هزینه و منابع: حملات DDoS میتوانند هزینهها و منابع قابل توجهی را بر هدف و مدافعان آن تحمیل کنند. هدف ممکن است برای مقابله با حمله مجبور باشد روی سختافزار، نرمافزار، پهنای باند یا پرسنل اضافی سرمایهگذاری کند. ممکن است هدف مجبور شود برای درآمد، مشتریان یا فرصتهای از دست رفته ناشی از حمله هزینه کند. ممکن است مدافعان مجبور باشند زمان، پول یا تلاشی را برای نظارت، تجزیه و تحلیل یا کاهش حمله صرف کنند.
چگونه میتوانیم حملات DDoS را کاهش دهیم؟
هیچ راه بیخطری برای جلوگیری یا توقف کامل حملات DDoS وجود ندارد، چون آنها دائما در حال تکامل و تطبیق هستند. با این حال، برخی از شیوهها و اقداماتی وجود دارد که میتواند به شما در کاهش خطر و تأثیر حملات DDoS کمک کند. بعضی از آنها عبارتند از:
– تهیه و برنامهریزی: شما باید یک طرح پاسخ DDoS داشته باشید که نقشها، مسئولیتها، رویهها و ابزارهای شما را برای مقابله با حملات DDoS تعریف کند. شما همچنین باید یک برنامه پشتیبان داشته باشید که مراحل بازیابی شما را پس از حمله مشخص کند. شما باید برنامههای خود را به طور مرتب آزمایش و بهروز کنید تا از اثربخشی و آمادگی آنها اطمینان حاصل کنید.
– نظارت و تجزیه و تحلیل: شما باید عملکرد شبکه و سیستم، الگوهای ترافیک و گزارشها را برای شناسایی هرگونه ناهنجاری یا نشانهای از حملهٔ DDoS نظارت و تجزیه و تحلیل کنید. همچنین باید از ابزارهایی مانند اسکنرهای شبکه، فایروالها، سیستمهای تشخیص نفوذ یا سیستمهای پیشگیری از نفوذ برای شناسایی و مسدود کردن ترافیک یا فعالیت مضر استفاده کنید.
– ایمنی و بهروزرسانی: باید دستگاهها، برنامهها و سرویسهای خود را ایمن و بهروز کنید تا از به خطر افتادن یا سوء استفاده مهاجمان جلوگیری کنید. همچنین باید از رمزهای عبور قوی، رمزگذاری، احراز هویت یا مجوز برای محافظت از دادهها و دسترسی استفاده کنید. همچنین باید از باز کردن یا دانلود هر گونه فایل مشکوک خودداری کنید چون ممکن است حاوی بدافزار یا ویروس باشند.
– تنوع و توزیع: باید داراییهای آنلاین خود را در چندین مکان پخش و توزیع کنید. همچنین باید از تکنیکهایی مانند متعادلسازی بار، ذخیرهسازی یا شبکههای تحویل محتوا برای بهبود در دسترس بودن شما استفاده کنید.
– شراکت و همکاری: باید با ارائهدهندگان خدمات اینترنتی خود (ISP)، ارائهدهندگان میزبانی، ارائهدهندگان امنیت یا سایر ذینفعان برای به اشتراک گذاشتن اطلاعات، منابع یا تخصص در مورد حملات DDoS همکاری کنید.
چگونه با حملات DDoS مقابله و از آن جلوگیری کنیم؟
حملات DDoS یک تهدید جدی برای هر سرویس آنلاین است، چون میتواند باعث خسارات مالی قابل توجه، آسیب به شهرت، نارضایتی مشتری و عواقب قانونی شود. بنابراین، داشتن یک استراتژی برای مقابله و جلوگیری از حملات DDoS ضروری است. برخی از بهترین روشها برای انجام این کار عبارتند از:
– بر ترافیک شبکهٔ خود نظارت کنید: اولین گام برای شناسایی و متوقف کردن یک حملهٔ DDoS، نظارت بر ترافیک شبکه و جستجوی هرگونه ناهنجاری یا جهش است که ممکن است نشاندهندهٔ یک حملهٔ مداوم باشد. شما میتوانید از ابزارها و خدمات مختلفی برای نظارت بر عملکرد شبکه خود استفاده کنید، مانند تحلیلگرهای شبکه، مولدهای ترافیک، متعادلکننده بار و غیره.
– ترافیک خود را فیلتر کنید: دومین مرحله برای کاهش حملهٔ DDoS، فیلتر کردن ترافیک شما و مسدود کردن هرگونه بسته یا درخواست مخرب یا ناخواسته است. میتوانید از تکنیکها و فناوریهای مختلفی برای فیلتر کردن ترافیک خود استفاده کنید، مانند فایروالها، روترها، پروکسیها، VPNها و غیره. همچنین میتوانید از سرویسهای مبتنی بر ابری که محافظت و کاهش DDoS را ارائه میکنند، مانند Microsoft Azure DDoS Protection یا Amazon Web Services Shield استفاده کنید.
– منابع خود را توزیع کنید: گام سوم برای جلوگیری از حملهٔ DDoS، توزیع منابع و کاهش تأثیر یک نقطهٔ شکست است. شما میتوانید از روشها و پلتفرمهای مختلفی برای توزیع منابع خود استفاده کنید، مانند شبکههای تحویل محتوا (CDN)، محاسبات ابری، تعادل بار و غیره. با توزیع منابع خود، میتوانید در دسترس بودن، مقیاسپذیری و انعطافپذیری خود را در برابر حملات DDoS افزایش دهید.
سخن پایانی
حملات DDoS یکی از رایجترین و خطرناکترین حملات سایبری است که میتواند هر سرویس آنلاین را تحت تأثیر قرار دهد. هدف آنها این است که با غلبه بر ترافیک یا درخواست از چندین منبع، یک وبسایت یا منبع را غیرقابل استفاده کنند. آنها از نظر تعداد منابع، سهولت شناسایی، سرعت حمله، حجم ترافیک و نحوهٔ اجرا با حملات DoS تفاوت دارند. برای مقابله و جلوگیری از حملات DDoS، نظارت بر ترافیک شبکه، فیلتر کردن ترافیک و توزیع منابع بسیار مهم است. با پیروی از این شیوهها، میتوانید از خود در برابر حملات DDoS محافظت کنید و از در دسترس بودن و عملکرد سرویس آنلاین خود اطمینان حاصل کنید.