راه اندازی TCP INTERCEPT در روترهای سیسکو

راه اندازی TCP INTERCEPT در روترهای سیسکو

به کانکشن هایی که syn و syn/ack در آن ها رد و بدل شده اما مرحله آخر که ack پایانی است انجام نمی شود کانکشن half-open یا embryonic می گویند. این باعث میشود که منابع سیستم درگیر این اتصالات نیمه باز شده و سرور دیگر به پاسخگویی به بقیه ازتباطات نخواهد بود. در فایروال ها مانند ASA سیسکو ابزار جلوگیری از این حملات وجود دارد خاصیت TCP Intercept در روتر سیسکو می باشد ، که این خاصیت هم به شما در جلوگیری از این نوع حملات کمک خواهد نمود.

حالت های راه اندازی TCP Intercept

شما میتوانید TCP Intercept را در دو mode راه اندازی کنید:

  1. Intercept Mode
  2. Watch Mode

حالت Intercept

در این حالت روتر سیسکو به عنوان پروکسی عمل میکند، به عبارت ساده تر زمانی که کامپیوتر ها سعی به ارتباط با سرور میکنند ، روتر سیسکو با دیدن syn خودش به جای سرور syn/ack می دهد و اگر ack پایانی را دریافت کند ، حال خودش با سرور tcp session را established خواهد کرد. نتیجه تا از سالم بودن ارتباط مطمئن نشود ، کانکشنی با سرور برقرار نخواهد شد.

معمولا روتر ها را در حالت Intercept Mode پیکربندی نمی کنند ، به یک دلیل ساده! اگر تحت Ddos باشیم فشار از روی سرور برداشته خواهد شد اما این فشار بر روی منابع روتر خواهد بود. از طرفی در شرایطی که همه چیز درست باشد و ما حمله ای نداشته باشیم باز هم روتر درگیر خواهد بود.

راه اندازی TCP INTERCEPT در روترهای سیسکو:

حالت Watch

در این حالت ، ماجرا به این صورت خواهد بود که روترهای سیسکو به جای اینکه در برقراری ارتباط مانند پروکسی عمل کند ، از این به بعد مراحل 3-way handshake را تحت نظر خواهد گرفت. و حواسش به کانکشن های half-open یا همان embryonic ها خواهد بود.

در صورتی که این کانکشن ها در مدت زمان مشخصی (پیش فرض ۳۰ ثانیه) برقرار نشوند، روتر با فرستادن tcp reset به سرور کانکشن را خواهد بست. تا منابع سرور آزاد گردد.

نمونه ای از کانفیگ TCP Intercept

Router(config)# access-list 100 tcp permit tcp any any

Router(config)# ip tcp intercept list 100

با استفاده از خط بالا مشخص می کنیم که کدام ارتباطات را باید بررسی کنیم! بهتر است به جای اینکه مانند بالا همه سرور ها بررسی شوند ، ارتباط با سرور ها و یا منابع با ارزش را بررسی کنیم.

Router(config)# ip tcp intercept mode {intercept | watch}

در خط بالا مشخص میکنیم که در کدام مود باید tcp intercept کار خود را انجام دهد.

Router(config)# ip tcp intercept watch-timeout seconds

Router(config)# ip tcp intercept finrst-timeout seconds

Router(config)# ip tcp intercept connection-timeout seconds

دستور اول زمانی را که یک کانکشن باید established شود را مشخص میکند. در صورتی که در این زمان کانکشن برقرار نشود روتر سیسکو با فرستادن reset این ارتباط را خواهد بست.

زمانی که در حالت TCP intercept mode باشیم ، روتر حواسش به بسته شدن یک کانکشن هم هست ، در واقع زمانی که ما TCP RESET یا TCP FIN را میبیند ، انتظار دارد این ارتباط ظرف مدت ۵ ثانیه به صورت پیش فرض بسته شود. در صورتی که این اتفاق نیافتد خودش مدیریت کانکشن را به عهده خواهد گرفت. با finrst-timeout میتوان این زمان را عوض کرد

زمانی که TCP Intercept مدیریت کانکشن ها را به عهده دارد یک کانکشن tcp را تا ۲۴ ساعت مدیریت خواهد کرد و در صورت idle بودن کتنکشن در این مدت ، کانشن را خواهد بست. با دستور connection-timeout میتوان این زمان را عوض کرد.

Router(config)# ip tcp intercept max-incomplete high number

Router(config)# ip tcp intercept max-incomplete low number

با دستور اول حالت خشمگینانه یا aggresive را مشخص خواهیم کرد. در واقع با دستورات بالا میگوییم که اگر تعداد کانکشت های نیمه باز(half-open) از high number بیشتر شد، رپتر شروع به بستن کانکشن های قدیمی تا رسیدن به low number کند.

Router(config)# ip tcp intercept drop-mode {oldest | random}

با این دستور میتوان مشخص کرد درصورتی که قرار است کانکشن ها بسته شود، اول کانکشن های قدیمی بسته شود یا این کار به صورت random انجام شود.

Router(config)# ip tcp intercept one-minute high number

Router(config)# ip tcp intercept one-minute low number

با دستورات بالا هم threshold برای بازه ۱ دقیقه ای تعریف میگردد.


بیشتر بخوانید:

حملات DOS و DDOS چیست؟

نوشتن دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.