آشنایی با حملات منع سرویس به عنوان تهدیدی برای موفقیت یک وبسایت، برای وبمسترها لازم است. حملات منع سرویس ممتد و طولانی میتواند باعث از دست دادن مشتریان شود. از سوی دیگر رقبای شما میتوانند با حملات کوچک و از دسترس خارج کردن وب سایت شما تنها برای 30 دقیقه در روز به مدت یک ماه، تمامی تلاش شما برای افزایش رنک در موتورهای جستجو را از بین ببرند و به سئوی شما لطمه جدی وارد کنند.
حملات منع سرویس (محروم سازی از سرویس – انگلیسی: Denial of Service – به اختصار: DoS) تلاش مخربی است که در دسترس بودن سرویس را هدف قرار میدهند و تلاش میکنند سرویس مورد نظر را مختل کنند. یک شبکهی کامپیوتری یا یک وبسایت خدمات رسانی میتوانند هدف حملات دیداس قرار گیرند.
معمولا حمله کننده تعداد زیادی درخواست یا پکت برای سیستم هدف ارسال میکند و ظرفیت آن را پر میکند. بنابراین سیستم هدف دیگر نمیتواند به سرویسدهی خود ادامه دهد.
در حالت حملات منع سرویس توزیع شده (انگلیسی: Distributed Denial of Service – به اختصار: DDoS) حمله کننده از چندین سیستم برای حمله استفاده میکند.
حمله میتواند در هر یک از لایههای Open Systems Interconnection (OSI) انجام شود. لایههایی که بیشتر مورد حمله قرار میگیرند عبارتند از شبکه (لایه 3), ترنسپورت (لایه 4), پرزنتیشن (Layer 6) و اپلیکیشن (لایه 7).
# | لایه | کارکرد | مثال |
7 | اپلیکیشن | داده | HTTP floods, DNS query floods |
6 | پرزنتیشن | داده | SSL abuse |
5 | سشن | داده | N/A |
4 | ترنسپورت | سگمنت | SYN floods |
3 | شبکه | پکت | UDP reflection attacks |
2 | دیتا لینک | فریم | N/A |
1 | فیزیکی | بیت | N/A |
زمانی که به راههای مقابله با حملات منبع سرویس فکر میکنیم، میتوانیم این حملات را به دو نوع حمله به زیر ساخت (لایه 3 و 4) و حمله به اپلیکیشن (لایه 6 و 7) دستهبندی کنیم.
حملات به لایههای 3 و 4 به حملات مربوط به زیرساخت شناخته میشوند. این نوع حملات بیشتر انجام میشوند. حمله SYN flood و UDP flood انواعی از این نوع حملات هستند. در این حملات ظرفیت شبکه و سرور هدف قرار میگیرد. خوشبختانه نشانههای این نوع حملات واضح است و راه مقابله با آن نیز مشخص است.
این حملات کمتر انجام میشوند اما در صورتی که بخش سنگینی از اپلیکیشن را هدف قرار دهند، میتوانند به سرعت ظرفیت سرور را به خود مشغول کنند.
حمله HTTP flood به صفحاتی که از حافظه پنهان استفاده نمیکنند (مانند صفحه لاگین)، حمله به یک API سنگین برای جستجو یا حملات خاص تر مانند XML-RPC floods در نرم افزار وردپرس، نمونههایی از این حملات هستند.
در اولین گام بهتر است گزینههای در دسترس برای حمله را کاهش دهیم. پورتها، پوروتکلها یا حتی جاهایی که انتظار ندارید از آنجا مشتری داشته باشید را محدود کنید.
استفاده از CDN و Load balancer برای کاهش بار روی سرور اصلی و محدود کردن دسترسی به زیرساخت مانند Database server شروع خوبی است. همچنین استفاده از Firewall برای کنترل ترافیک ورودی لازم است.
یک راه حل عملیاتی قرار گرفتن پشت یک WAF و مخفی کردن IP است. برای اینکار میتوانید از Cloudflare استفاده کنید. دقت کنید که اگر IP شما در گذشته آشکار شده است، باید IP خود را تغییر دهید. اطلاعات تاریخچه DNS در اینترنت موجود است و هکر میتواند IP شما قبل از قرار گرفتن پشت WAF را پیدا کند. سپس با استفاده از Firewall همهی پورتها را ببندید و دسترسی HTTP را فقط برای Cloudflare باز کنید.
در صورت پیاده سازی معماری مقیاس پذیر برای سرویس، مطمئن میشوید سرویس شما تحت هیچ شرایطی از دسترس خارج نخواهد شد. در این حالت حمله هکرهای تنها باعث افزایش هزینههای شما خواهد شد، اما سرویس همچنان به فعالیت خود ادامه خواهد داد.
در صورت تشخیص منبع ترافیک میتوانید به راحتی سرویس دهی با آن را قطع کنید. به خاطر داشته باشید که هکر برای فرآهم کردن Botnet یا زامبی به منظور حمله به شما، هزینههایی پرداخت میکند. بنابراین با بستن منبع حمله هزینههای حمله را بالا میبرید. با اینکار میتوانید قدرت هکر برای حمله را کاهش دهید.
برای انتقال تعداد بالای فایل لازم است، انتقال به صورت موازی راه مناسبی است. یک…
برای دور زدن رجیستری تحریم شده npm میتوانید از رجیستریهای جایگزین مانند https://iranrepo.ir/#npm استفاده کنید.…
سرویس داکر در ایران به دلیل تحریم، در دسترس نیست. به این صورت که هنگام…
یک فایل سیستم توزیع شده (DFS)، هر فایل سیستمی است که امکان دسترسی به فایلها…
باندلینگ یا بستهبندی یکی از مراحل توسعه در زبان جاوا اسکریپت است. در توسعه مدرن…
بیت کوین همانند طلا کاربرد ذخیره ارزش دارد. مردم بیت کوین را با هدف حفظ…