Categories: سایر

چگونه از وب‌سایت خود در برابر حملات DDoS محافظت کنیم؟

آشنایی با حملات منع سرویس به عنوان تهدیدی برای موفقیت یک وب‌سایت، برای وب‌مسترها لازم است. حملات منع سرویس ممتد و طولانی می‌تواند باعث از دست دادن مشتریان شود. از سوی دیگر رقبای شما می‌توانند با حملات کوچک و از دسترس خارج کردن وب سایت شما تنها برای 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
لایه‌های مدل OSI

دسته‌بندی حملات منع سرویس

زمانی که به راه‌های مقابله با حملات منبع سرویس فکر می‌کنیم، می‌توانیم این حملات را به دو نوع حمله به زیر ساخت (لایه 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 یا زامبی به منظور حمله به شما، هزینه‌هایی پرداخت می‌کند. بنابراین با بستن منبع حمله هزینه‌های حمله را بالا می‌برید. با اینکار می‌توانید قدرت هکر برای حمله را کاهش دهید.

admin

Recent Posts

انتقال تعداد و حجم بالای فایل بین سرورها

برای انتقال تعداد بالای فایل لازم است، انتقال به صورت موازی راه مناسبی است. یک…

3 سال ago

رفع مشکل تحریم npm

برای دور زدن رجیستری تحریم شده npm می‌توانید از رجیستری‌های جایگزین مانند https://iranrepo.ir/#npm استفاده کنید.…

3 سال ago

رفع مشکل تحریم داکر

سرویس داکر در ایران به دلیل تحریم، در دسترس نیست. به این صورت که هنگام…

3 سال ago

فایل سیستم توزیع‌شده چیست؟ معرفی چند پروژه متن باز فایل سیستم توزیع شده

یک فایل سیستم توزیع شده (DFS)، هر فایل سیستمی است که امکان دسترسی به فایل‌ها…

3 سال ago

بسته‌بندی (Bundling) جاوا اسکریپت

باندلینگ یا بسته‌بندی یکی از مراحل توسعه در زبان جاوا اسکریپت است. در توسعه مدرن…

3 سال ago

بیت کوین چگونه به کسب و کار شما کمک می‌کند؟

بیت کوین همانند طلا کاربرد ذخیره ارزش دارد. مردم بیت کوین را با هدف حفظ…

4 سال ago