Home » Bilgi Teknolojileri, Cisco, Netwotk

Cisco Ios Security TCP Intercept

28 Ağustos 2008 1,312 views No Comment

TCP INTERCEPT :

22858082gt5.jpg

Cisco ios ile stateful firewall şeklinde session bazlı korumalar sağlanabilir aşağıdaki yazıda Kıvaç Hocam tcp intercept komutları ile tcp attacklarını nasıl engelleyeceğimizi vede gerekli  konfigurasyonun nasıl yapıldığını çok güzel ifade etmiş.TCP SYN flood atakları en eski atak yöntemleridir.Hacker lar her connection nın kurulması için gereken three-way handshake ın tamamlanmasını beklemeden sürekli TCP SYN paketleri gönderirler. Hacker aynı zamanda IP Spoofing yaparak source IP adresini sürekli değiştirir ve bu adreslere ulaşılamadığından connection lar half-open durumda kalır.

Server bu connection ı ancak local connection table ındaki TCP timeout süresi expire olana kadar bekletecekdir.

Bu atakları engellemek için TCP INTERCEPT yöntemi kullanılmaktadır. Bu yöntem için kullanılan iki mode vardır.

  1. Intercept Mode :

Şekilde de görüleceği üzere external user server a bir istekde bulunduğunda router araya girerek user-server arasındaki iletişimi three-way handshake tamamlanana kadar simulate edecektir, three-way handshake tamamlanınca 7 adımdaki gibi connection ı server üzerine bind edecektir.

  1. WATCH Mode :

Bu modda router belirtilen period süresince (default 30 sn.) connection ı izliyor ve three-way handshake tamamlanamaz ise router server a TCP reset gönderiyor ve server connection ı remove ediyor.
Configuration :

1-      İlk olarak bu özelliği enable edeceğiz.Belli bir traffic için TCP intercept i enable etmek mantıklıdır. Bu sebebten aşağıdaki gibi bir config kullanabiliriz.

Router(config)# access-list 100 tcp permit tcp any host 192.1.1.1 eq 80
Router(config)# access-list 100 tcp permit tcp any host 192.1.1.2 eq 25
Router(config)# ip tcp intercept list 100

2-      Şimdi hangi mod u kullanacağımıza karar verelim.Default mode intercept dir.

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

3-      Bir sonraki adım olan timer sürelerini inceleyelim.

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

ip tcp intercept watch-timeout : three-way handshake tamamlanması için gereken max. süredir, default 30 sn.dir. Bu süre dolduğunda router server a reset göndererek TCP session ı sonlandırtır.

ip tcp intercept finrst-timeout : reset veya FIN-exchange paketinden 5 sn. sonra connection nın gözlenmesi kesiliyor.

ip tcp intercept connection-timeout : default 24 saattir. 24 saat sonra connection hala idle ise connection kesiliyor.

4-      Şimdi threshold değerlerini değiştirelim.default değerler, high için 1100 low içinse 900 dür.

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

High max. half-open connection sayısını low ise kabul edilecek  half-open sayısını belirtiyor. Bunu şu şekilde örnekleyebiliriz :

ip tcp intercept max-incomplete high 1500
ip tcp intercept max-incomplete low 1200

olarak tanımlarsak half-open connection sayısı 1500 olunca 1200 e indirene kadar half-open connection lar drop edilmeye başlanır.Ayrıca one-minute komutu ile bu değerleri 1 dakikalık süreç içinde ölçeklendirebiliriz.

5-      Peki half-open connectionları nasıl drop edeceğimizi belirleyeceğimiz methotlar nedir ?

Router(config)# ip tcp intercept drop-mode {oldest | random}
6-  Son adım olarak verification yapalım.
Router# show tcp intercept statistics
intercepting new connections using access-list 100
12 incomplete, 5 established connections (total 17)
1 minute connection request rate 2 requests/sec
Router# show tcp intercept connections 
Incomplete:
Client      Server      State  Create  Timeout Mode
201.1.1.1:33772  200.1.1.30:80  SYNRCVD 00:00:09 00:00:05 I
201.1.1.1:33773  200.1.1.30:80  SYNRCVD 00:00:09 00:00:05 I
Established:
Client       Server     State  Create  Timeout Mode
201.1.1.2:33771  200.1.1.2:23  ESTAB  00:00:08 23:59:54 I
Router# debug ip tcp intercept
INTERCEPT: new connection (192.1.1.1:33884) => (200.1.1.2:23)   (1)
INTERCEPT: 192.1.1.1:33884 <- ACK+SYN (200.1.1.2:33884)
INTERCEPT: new connection (192.1.1.1:33885) => (200.1.1.2:23)   (2)
INTERCEPT: 192.1.1.1:33885 <- ACK+SYN (200.1.1.2:33885)
INTERCEPT: retransmit 2 (192.1.1.1:33884) <-           (3)
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 2 (192.1.1.1:33885) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: new connection (192.1.1.2:32790) => (200.1.1.2:23)   (4)
INTERCEPT: 192.1.1.2:32790 <- ACK+SYN (200.1.1.2:32790)
INTERCEPT: retransmit 4 (192.1.1.1:33884) <-           (5)
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 4 (192.1.1.1:33885) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 2 (192.1.1.2:32790) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: 1st half of connection is established         (6)
     (192.1.1.2:32790) => (200.1.1.2:23)
INTERCEPT: (192.1.1.2:32790) SYN -> 200.1.1.2:23
INTERCEPT: retransmit 2 (192.1.1.2:32790) ->
     (200.1.1.2:23) SYNSENT
INTERCEPT: 2nd half of connection established           (7)
     (192.1.1.2:32790) => (200.1.1.2:23)
INTERCEPT: (192.1.1.2:32790) ACK -> 200.1.1.2:23
INTERCEPT: retransmit 8 (192.1.1.1:33884) <-           (8)
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 8 (192.1.1.1:33885) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 16 (192.1.1.1:33884) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmit 16 (192.1.1.1:33885) <-
     (200.1.1.2:23) SYNRCVD
INTERCEPT: retransmitting too long (192.1.1.1:33884) =>      (9)
     (200.1.1.2:23) SYNRCVD
INTERCEPT: 192.1.1.1:33884 <- RST (200.1.1.2:23)
INTERCEPT: retransmitting too long (192.1.1.1:33885) =>
     (200.1.1.2:23) SYNRCVD
INTERCEPT: 192.1.1.1:33885 <- RST (200.1.1.2:23)
Bu yazımızı örneklerimiz ile sonlandıralım.
ÖRNEK 1:
   

access-list 199 permit tcp any 150.1.4.0 0.0.0.255 eq 80
!
ip tcp intercept list 199
ip tcp intercept max-incomplete high 1500
ip tcp intercept max-incomplete low 1200
ip tcp intercept connection-timeout 3600
ip tcp intercept drop-mode random
ÖRNEK 2:
   

access-list 199 permit tcp any 150.1.4.0 0.0.0.255 eq 80
!
ip tcp intercept list 199
ip tcp intercept mode watch
ip tcp intercept watch-timeout 15
ip tcp intercept max-incomplete high 1500
ip tcp intercept max-incomplete low 1200
ip tcp intercept connection-timeout 3600
ip tcp intercept drop-mode random
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Bu Makale İle İlgili Dğer Haberlere Göz At...

Microsoft (MCSE), Cisco (CCNA, CCNP) Sınavlarına Hazırlık Sınav Soruları (Dump)
Fedora üzerinde Swat ile Samba dosya sunucusunun yönetimi
Firewall Nedir? (Security)
Cisco Routerlarının Yonetimi (komut)
Network Güvenliği (Lan Security)
Sistem Mühendisliği Eğitim Seti
Vista Gibi Linux
Samba Kurulumu (Ayrıntılı Mükemmel Bir kaynak)

Leave your response!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.