رفتن به نوشته‌ها

در خصوص حمله HTTP Flood بیشتر بدانید

HTTP flood یکی از مخرب ترین حملات DDoS محسوب می شود که برای مهاجمان به راحتی در دسترس است؛ HTTP Flood یک حمله در سطح لایه کاربردی (نرم افزاری – لایه ۷ مدل OSI ) است و ساختن بات نت های گسترده برای این نوع حمله برای هکرها بسیار آسان و جلوگیری از آن بسیار دشوار است.

سرورهایی که میزبان وب سایت ها هستند از وب سرور هایی همچون آپاچی؛ Nginx یا لایت اسپید استفاده می کنند. معمولا قدرت سرور نیز متناسب با نیاز و مصرف انتخاب می شود و هر سرور می تواند در حد و توان خودش به صورت همزمان به یک تعداد حدودی از کاربران سرویس دهد ( مثلا ۱۰۰۰ کاربر همزمان) که البته این مورد بستگی به میزان مصرف منابع در هر بازدید یا ارائه سرویس نیز دارد.

زمانی که یک کاربر از یک وب سایت بازدید می کند یک ارتباط TCP میان کاربر و سرور برقرار می شود.
اول کلاینت یک بسته SYN به سرور می فرستد
دوم سرور یک بسته SYN ACK به کلاینت می فرستد
سوم کلاینت یک بسته ACK به سرور می فرستد

زمانی که این اتفاق می افتد یک ارتباط باز بین سرور و کلاینت برای انتقال اطلاعات به وجود می آید و پکت های TCP بین آنها منتقل می شود که مرورگر این پکت های TCP را ترجمه کرده و محتوای یک وب سایت را به شما نشان می دهد؛ دقیقا مثل همین صفحه ای که در حال خواندن آن هستید.

حملات HTTP flood شامل باز کردن یک اتصال TCP معتبر در سرور و اقدام به ارسال تعدادی رکوئست به سرور است؛ مثل دانلود هر چیزی که در یک صفحه وب هست یا درگیر کردن بخشی از سایت برای ایجاد پرس و جوی بیش از اندازه در دیتابیس و …
یک مثال از حملات HTTP flood که به صورت GET ارسال می شوند شبیه به زیر است :

T 198.19.0.2:42728 -> 198.18.0.80:80 [AP] GET / HTTP/1.1. Host: example.com. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0. .
T 198.19.0.2:40962 -> 198.18.0.80:80 [AP] GET / HTTP/1.1. Host: example.com. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0. .
T 198.19.0.2:51486 -> 198.18.0.80:80 [AP] GET / HTTP/1.1. Host: example.com. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0. .
T 198.19.0.2:55300 -> 198.18.0.80:80 [AP] GET / HTTP/1.1. Host: example.com. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0. .
T 198.19.0.2:56396 -> 198.18.0.80:80 [AP] GET / HTTP/1.1. Host: example.com. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0. .

در حمله بالا؛ هر خط یک دستور GET برای لود کامل یک صفحه و یک Session کامل است.

یک حمله HTTP flood ممکن است هدف های مختلفی داشته باشد،اولین و ساده ترین اتفاقی که می افتد تعداد بالای سشن های TCP است که این خود به تنهایی ممکن است فشار بالایی به یک سرور بیاورد.
بخش پیچیده تر آن این است که در هر سشن TCP بار ها و بار ها به صورت مداوم رکوئست هایی به سرور ارسال می شود و سرور نیز تلاش می کند با استفاده از منابع خود به این رکوئست ها پاسخ دهد؛ بنابراین سرور به صورت مداوم در حال پردازش است و با بالا رفتن این کانکشن ها سرور از پاسخ دهی به کاربران عادی خود باز می ماند و به اصطلاح منابع سرور فول می شوند.

متاسفانه راه اندازی یک حمله HTTP flood کار دشواری نیست و با اسکریپت هایی که در اینترنت منتشر شده به راحتی قابل انجام است؛ البته برای راه اندازی یک حمله عظیم تر , یک سرور برای هکر کافی نخواهد بود و از روی چند سرور اسکریپت ها را اجرا می کند و هر چه تعداد سرور ها یا بات نت ها بیشتر باشد حمله بزرگتری می تواند انجام دهد.

البته این متود با SYN flood متفاوت است چرا که در SYN flood فقط یک بسته ارسال می شود و پیگیری بسته و مراحل بعدی در کار نخواهد بود.

خطرناک بودن HTTP flood به این دلیل است که یک اتصال کاملا قانونی دارد و دقیقا مثل یک کاربر و مرورگر عمل می کند و تشخیص آن بسیاردشوار است و از روش هایی همچون malformed packets یا spoofing یا بازتابی استفاده نمی کند و هکر برای انجام آن نیاز به پهنای باند بالا ندارد و با کمترین مصرف پهنای باند برای هکر بیشترین خطر را برای یک سرور به وجود می آورد.

منبع : سنترال هاستینگ

منتشر شده در آموزشی

اولین باشید که نظر می دهید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *