معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

حملات DOS و DDOS حملاتی هستند که به صورت روزانه در حال رشد می باشند و به صورت مداوم زیر ساخت های ارتباطی را مورد هدف قرار می دهند. شرکت های ارتباطی و سرویس دهندگان اینترنت هزینه های زیادی را صرف جلوگیری از این حملات و جلوگیری از صدمه زدن به مشتری های خود می کنند اما تا به امروز راه حل جامع و مقرون به صرفه ای برای جلوگیری از این حملات ارایه نشده است.نحوه ی عملکرد ان این حملات به سرعت در حال تغییر و پیچیده تر شدن است بنابراین دفاع در برابر این حملات کار بسیار دشواری است

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

حمله ی DOS چیست؟

در حمله ی DOS از یک سیستم برای ارسال ترافیک به یک سرور یا زیرساخت شبکه ای برای از دسترس خارج کردن ان و جلوگیری از سرویس دادن به کاربران استفاده می شود.حمله ی DOS به دو روش انجام می شود:

  • روش اول این است که ضعف امنیتی در سرور یا سرویس مورد نظر پیدا شود و با نوشتن Exploit برای ان باعث از دسترس خارج کردن ان یا ایجاد کندی در عملکرد ان استفاده کرد.
  • روش دوم از دسترس خارج کردن منابع شبکه ای (Network resource ) سرور است این کار با ارسال حجم عظیمی از ترافیک جعلی میسر می شود. با از دسترس خارج کردن منابع شبکه ای ان سرویس عملا غیر قابل دسترس خواهد بود.

حمله ی DDOS چیست؟

همان حمله ی DOS است با این تفاوت که ترافیک غیر مجاز مورد نظر از سیستم و سرور های مختلف ارسال خواهد شد .این سیستم ها و سرور ها معمولا در مناطق جغرافیایی متفاوتی قرار دارند.

دسته بندی حملات DDOS

حملات DDOS به سه دسته ی اصلی زیر تقسیم می شوند:

  • حمله از نوع Direct Flooding Attacks: حمله ی Direct Flooding Attacks ساده ترین نوع حملات DOS و DDOS است که در ان ترافیک به صورت مستقیم از سیستم یا سرور attacker خارج می شود. در این نوع حملات به راحتی می توان ادرس IP ارسال کننده ترافیک را در پروتکل های ICMP و UDP و TCP جعل کرد.
  • حمله از نوع Remote Controlled Network Attacks : در این روش attacker با نفوذ به تعدادی از سیستم ها کد خاصی را جایگزاری می کند . این سیستم های الوده با دریافت پیام مشخصی از attacker شروع به ارسال ترافیک مخرب خواهند کرد. ارتباط این سیستم ها با attacker معمولا با استفاده از channel های IRC یا ICMP انجام می شود. در روش های پیچیده تر سیستم های الوده برروی پورت خاصی در حات listen قرار می گیرند زمانی که ارتباط TCP SYN روی ان پورت قرار گرفت شروع به ارسال ترافیک مخرب می کند.شناسایی منشا این حملات به دلیل اینکه سیستم های زیادی در حمله مشارکت داشتند کار بسیار دشواری است.
  • حمله از نوع Reflective Flooding Attacks : در این روش attacker ترافیک مخرب مورد نظر خود را با ادرس IP سرور قربانی به یک سیستم ثانویه ارسال می کند. وقتی که سیستم ثانویه این ترافیک را دریافت می کند reply ان را به سرور قربانی ارسال می کند. در این روش نیز چون ترافیک اصلی از سیستم ثانویه ارسال می شود ردیابی منشا حمله کار بسیار دشواری خواهد بود.در این نوع حملات معمولا سرویس دهنده های معروف مثل google و yahoo به عنوان سیستم های ثانویه استفاده می شوند چون معمولا دسترسی سیستم قربانی به این سرویس ها محدود نمی باشد.در این نوع حملات سرعت ملاک مهمی برای ارزیابی تاثیر حمله می باشد معمولا DNS server و Web server ها از نظر سرعت سیستم های خوبی برای ارسال ترافیک هستند همچنین از سیستم هاییی که از سخت افراز های ASIC در ان ها استفاده شده است نیز در این نوع حمله می توان استفاده کرد چرا که سرعت خوبی را در ارسال ترافیک ارایه می کنند معمولا در تجهیزات شبکه مثل فایروال و روتر از این نوع سخت افزار استفاده می شود در نتیجه اگر این تجهیرات به درستی پیکربندی نشده باشند در حملات Reflective Flooding Attacks می توانند شرکت کنند.

تکنیک های مختلف حملات DDOS :

  • حمله ی Smurf attack : در این روش Attacker پهنای باند Victim را مورد هدف قرار می دهد. Attacker حجم عظیمی از ترافیک ICMP Request را به ادرس های مختلفی ارسال می کند . در این پکت ها Attacker ادرس source را ادرس سیستم Victim قرار می دهد در حقیقت ادرس Source را Spoof می کند و باعث می شود که حجم عظیمی از ترافیک ICMP Reply به سمت Victim سرازیر شود.
معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

حمله ی Ping Flood : روش Ping Flood مانند Smurf attack است با این تفاوت که سیستم Victim به صورت مستقیم مورد هدف ترافیک ICMP قرار می گیرد. روش های Ping flood و Smurf Attack جز ساده ترین روش های DDOS می باشد.کارایی و تخریب این روش نسبت به روش های دیگر کمتر است اما با این حال ممکن است به شبکه های LAN اسیب وارد شود.

معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

حمله ی TCP SYN Flood : روش هایی که در بالا توضیح داده شد برای تاثیر مخرب گذاشتن روی پهنای باند استفاده می شود اما روشی که در حال حاضر می خواهیم درباره ی ان صحبت کنیم روی CPU Memory سرور تاثیر مخرب خواهد گذاشت. قبل از اینکه هرگونه تبادل داده ای بین Client و سرور انجام شود مراحل Three way handshake انجام می شود.کار مخربی که در حمله ی SYN Flood انجام می شود که این است که Attacker سرور را در پکت های SYN غرق می کند سپس سرور این پکت ها را با پکت های ACK جواب می دهد اما بخش مخرب این حمله این است که هیچ پکت SYN-ACK از سمت Attacker ارسال نمی شود و این کار باعث می شود که ارتباط TCP به صورت ناقص روی سرور باقی بماند. این ارتباط نیمه کاره باعث می شود که وضعیت ان در Memory سرور باقی بماند حال اگر چندین هزار ارتباط ناقص روی سرور وجود داشته باشد باعث استفاده ی بیش از حد از Memory و Crash شدن سرور می شود.

معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

حمله ی UDP Flood: این روش مشابه حملات Ping flood است با این تفاوت که از پکت های UDP به جای پکت های ICMP استفاده می شود. این حملات نسبت به حملات Ping flood می تواند قدرت تخریب بیشتری داشته باشد و دلیل ان این است که اندازه ی پکت های UDP نسبت به ICMP خیلی بیشتر می باشد. طول پکت های UDP ممکن است تا 65000 بایت باشد.

معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

در ادامه به پیکربندی فورتی وب برای جلوگیری از حملات DOS پرداخته ایم: فورتی وب می تواند ترافیک ورودی را در لایه ی های زیر فیلتر بندی کند:

  • در لایه ی Application layer (HTTP or HTTP)
  • در لایه ی (Network and transport layer (TCP/IP

برای پیکربندی DOS Policy به مسیر مقابل بروید: DOS Protection -> application -> HTTP Access limit در این مسیر می توانیم ترافیک وب وارد شده در فورتی وب را با توجه به ادرس IP ان محدود کنیم. برای شناسایی ترافیک HTTP بر اساس Shared IP address باید به مسیر زیر:

System -> config -> advance

رفته و گزینه ی Shared IP را فعال کنیم.

f1

1-اختصاص Name: در این بخش برای Rule خود یک اسم انتخاب می کنیم.

  1. اختصاص (HTTP Request Limit/sec (Standalone IP : در این بخش تعیین می کنیم که از هر ادرس IP به صورت Standalone چه مقدار ترافیک HTTP در ثانیه وارد فورتی وب شود.
  2. تعیین (HTTP Request Limit/sec (Shared IP : در این قسمت تعیین می کنیم که از هر ادرس IP به صورت Share چه مقدار ترافیک HTTP در ثانیه وارد فورتی وب شود.
  3. تعیین Real Browser Enforcement : با استفاده از این قابلیت می توانیم زمانی که Threshold ما نقض شد کد جاوااسکریپتی به کاربر ارسال کنیم در صورتی که در مدت مشخص شده پاسخی دریافت شد یعنی اینکه این ترافیک از سمت Web browser ارسال شده است و مشکلی ندارد اگر Threshold ما نقض شود در غیر این صورت Rule ما ترافیک مربوطه را بلاک خواهد کرد.
  4. اختصاص Validation Timeout : مدت زمانی که ارسال کننده ترافیک می تواند در عملیات Real Browser Enforcement به فورتی وب پاسخ دهد.
  5. تعیین Action : در این بخش تعیین می کنیم که زمانی که Rule مورد نظر ما نقض شد فورتی وب چه اقدامی را اتخاذ گردد.
  6.  تعیین Severity : تعیین می کنیم که در صورت نقض این Rule لاگ ان با چه درجه حساسیتی ایجاد شود.
  7. اختصاص Trigger Policy : در این قسمت تعیین می کنیم که فورتی وب بعد از نقض این Rule چه اقداماتی را در راستای اطلاع رسانی ادمین انجام دهد.

در مسیر HTTP Access limit می توانیم از پروفایل پیش فرض فورتی نت برای DOS Policy استفاده کنیم اما با این حال پروفایل مورد نظر خود را ایجاد خواهیم کرد.فورتی وب مکانیزم های دیگری برای جلوگیری از حملات DOS دارد اما در این اموزش به روش HTTP Access limit بسنده می کنیم.در نهایت در DOS Protection policy رفته و rule مربوطه را در ان اضافه می کنیم متعاقبا policy ایجاد شده را در web protection و server policy اضافه می کنیم

معرفی انواع حمله DoS و DDoS و آموزش جلوگیری از DDoS در فورتی وب

نظرات