(DoS (Denial of Service: نوعی حمله است که باعث افزایش بار بر روی روتر یا سرور میشود به این معنی که مصرف سی پی یو به 100% میرسد و سرور یا روتر از دسترس خارج می شود یا بطور کل تمام عملیاتهایی که میتونند روی مصرف سی پی یو تاثیر بذارند مثل فایروال و لاگینگ که میتونند باعث overload روتر بشوند، در صورتی که تعداد بسیار بالایی packet در ثانیه به روتر برسه.
به طور کلی انجام این حمله برای اهداف زیر صورت میگیرد:
- پایین آوردن سرعت و کیفیت سرویسدهی شبکه
- از دسترس خارج کردن وبسایت مورد نظر
- قطع دسترسی تمام وبسایتها (با حمله به name serverها)
- افزایش تعداد هرزنامهها (که به بمب ایمیلی نیز معروف است)
لازم به ذکر است که این حمله فقط مختص به سرورها نیست و ممکن است یک شبکه و یا حتی روتر نیز مورد حمله قرار گیرد و ممکن است کار بخش عمدهای از اینترنت را مختل کند (همانطور که در طول تاریخ ۲بار اینترنت کل دنیا با این حمله مختل شده است).
SYN flood: نوعی از حمله Dos است که حمله کننده جانشینی از درخواستهای syn رو در تلاش به مصرف منابع بدون در نظر گرفتن ترافیک مجاز به سیستم هدف میفرسته.
Syn cookies: یک تکنیک کلیدی در دفاع در برابر حملات dos میباشد. اساس کار ان بر اساس صف بندی شماره TCP سرورها است به این صورت که syn coockie اجازه میده هنگامی که صف syn پر میشه سرور از اتصال کانکشنها جلوگیری کنه.
نحوه تشخیص:
با استفاده از کدهای CLI زیر میتونید نوع حمله رو تشخیص بدید. اگر اتصالات بسیار زیادی به سرور شما از طریق syn فرستاده شده وجود دارد:
/ip firewall connection print
اگر پکتهای زیادی به شبکه شما وارد میشود:
/interface monitor-traffic ether3
اگر مصرف سی پی یو شما 100% است:
/system resource monitor
اگر اتصالات بسیار زیاد مشکوکی به سرور خود دارید:
/tool torch
نحوه محافظت در برابر این حملات:
نحوه محدود کردن کانکشن ها:
ای پی ادرسی رو که کانکشنهای زیادی به سرور شما زده به بلک لیست اضافه کنید:
/ip firewall filter add chain=input protocol=tcp connection-limit=LIMIT,32 action=add-src-to-address-list address-list=blocked-addr address-list-timeout=1d
به این نکته توجه داشته باشید که تعداد اتصالات رو با توجه به اتصالات مختلف …,http,p2p,torrent محدود کنید.
عملیات tarpit:
روتر شما میتونه با دستور زیر به سادگی پکتهای حمله کننده رو drop کنه و اتصالات رو نگه داره تا به اهستگی به اصطلاح حمله رو بخوابونه:
/ip firewall filter add chain=input protocol=tcp src-address-list=blocked-addr \ connection-limit=3,32 action=tarpit /ip firewall filter add chain=forward protocol=tcp tcp-flags=syn connection-state=new \ action=jump jump-target=SYN-Protect comment="SYN Flood protect" disabled=yes /ip firewall filter add chain=SYN-Protect protocol=tcp tcp-flags=syn limit=400,5 connection-state=new \ action=accept comment="" disabled=no /ip firewall filter add chain=SYN-Protect protocol=tcp tcp-flags=syn connection-state=new \ action=drop comment="" disabled=no
قرار دادن syn=400 در اینجا فقط به عنوان یک استانه است جهت drop کردن پکتهای syn.
استفاده از تکنیک SYN coockies:
برای میکروتیک ورژن 6:
/ip settings set tcp-syncookies=yes
برای میکروتیک های ورژنهای قدیمی تر:
/ip firewall connection tracking set tcp-syncookie=yes