Switch Attack Türleri

Hub kendine bir porttan gelen trafiği bütün portlara yollayan akılsız cihazlardır. Switchler daha akıllı olup portundaki cihazların mac adreslerini kendi mac tablosuna kayıt ederek gelen paketin Mac adreslerine bakarak anahtarlama yapan cihazlardır.

Hedefi MAC  tablosunda (Mac address table – Cam table) olmayan bir paket gelirse, hedefi nerede olduğunu bilmediği için hub mantığı ile çalışarak switch bu paketi tüm portlarına yollar. Hedef cihaz kendine gelen pakete cevap verince switch tarafından mac tablosuna kayıt edilir. Hedefi kendisi olmayan cihazlar gelen paketi çöpe atar.

CAM Table (Mac addresstable) Attacks

Haberleşmeye başlamadan önce bilgisayar kendi MAC adresini Ram (ön bellek) kayıt eder. Paket oluşturulmadan önce ram deki mac adresi değiştirerek paket oluşturulabilinir (Linux Kali ile macof –i eth0 tool ile yapılabilir). Switch mac tablosuna 8000 – 64000 arasında mac adresi kayıt edebilir. Cihaz 3 dk içinde yeni trafik oluşturmazsa mac adresi mac tablosundan silinir. Saldırgan farklı mac adresleri ile paketler oluşturup mac tablosunu şişirebilir. Bu durumda swtich yeni bir bilgisayarın mac adresini tablosuna kayıt yapamaz ve mac adresi kayıt olmayan bilgisayara giden paketler, switch tarafından bütün portlarına yollanır. Yani switch akıllı olma özelliğini kaybederek hub gibi çalışır. Dolayısıyla paketin bir kopyası Saldırganada geleceği için saldırgan ağı dinleyerek bu pakete sahip olabilir. Aynı zamanda networkte aşırı trafik olur hatta switch down duruma gelebilir.

CAM Table  Attacks Prevention Port security özelliği kullanılmalıdır.

Port Security

Portu mac adresi bazlı kısıtlama yapılmasıdır. Oluşturulan kısıtlamaya aykırı davranış sonucu uygulanacak aksiyon belirlenir.

switch (config-if)# switchport port-security ?

mac-address:  Stick komutu ile porta bağlanılan cihazın mac adresi öğrenilip etiketlenir veya mac adresi girişi yapılır.

maximum: Öğrenilecek mac adresi sayısıdır. Değer 5 olursa bu port en fazla 5 farklı mac adresi öğrenir

violation: Yapılan kısıtlamaya uyulmadığı zaman alınacak aksiyon belirtir. (protect, restrict,shutdown )

ör:

Her kullanıcının 1 tane masa üstü 1 tanede diz üstü bilgisayarı vardır.  Kullanıcı sadece bu 2 cihazı kullansın. Switch başka cihaz bağlarsa switch portu kapatılsın. Switch bu iki cihazın mac adresleri dynamic öğrensin

Switch(config)#interface range fastEthernet 0/1-24 (Portlar seçildi)

Switch(config-if-range)#switchport port-security mac-address sticky  (mac adresleri nasıl etiketleneceği belirlendi)

Switch(config-if-range)#switchport port-security maximum 2 (En fazla kaç tane mac adrese izin verileceği belirlendi)

Switch(config-if-range)#switchport port-security violation shutdown (Kural ihlal edildiğinde uygulanacak aksiyon belirlendi)

VLAN Attacks

Öncelikle vlan hakkında ayrıntılı bilgiyi buradan ulaşabilirsiniz…

VLAN Hopping Attacks: Saldırgan kendi VLAN değiştirmesidir. Saldırgan VLAN 10 dan VLAN 20 atlaması gibi. Böylelikle network içerisinde erişememesi gereken VLAN’ lara erişebilir.

DTP (DynamicTrunking Protocol)

Cisco’ya özel olan DTP, switchler arasındaki portun TRUNK olup olmadığına karar veren ve uygulayan protokoldür. DTP,  switch – switch portunu trunk yaparken switch – Bilgisayar (Client) portunu access porta çekebilir. DTP varsayılanda devrededir. Saldırgan DTP kullanarak  switch üzerinde 802.1Q (Trunk) protokolünü tetikleyerek kendi portunu Trunk porta çektirebilir. Ve böylelikle VLAN bilgilerine erişebilir. Bu saldırıdan korunmak için Switchler içerisindeki trunk olmayan portları Access porta kendimiz çekmeliyiz.  Yeni kurulan switchlerde bütün portu Access çekip sonradan trunk olacak portları trunk moda çekmek en doğrusudur.

Switch(config)#interface range fastEthernet 0/1-20

Switch(config-if)#switchport mode access

Protected ports

Switch bağlı belirli portları birbirinden izole etmektir. Yukarıdaki şekle göre PC7  ve PC8 bilgisayarları birbirleriyle haberleşemezken internete çıkabilirler.

Switch(config)#interface range fastEthernet 0/2-3

Switch(config-if-range)#switchport mode access

Switch(config-if-range)#switch port protected

DHCP Attacks

DHCP server hakkında ayrıntılı bilgi ve konfigürasyonu buradan ulaşabilirsiniz.

1-) DHCP Rogue Attack

DHCP spoofing atak saldırgan kendisini DHCP server gibi gösterip kendi istediği ip bilgilerini istemciye göndermesidir. Böylelikle gateway kendisini belirterek trafiği kendi üstüne çekebilir, veya DNS sayesinde gidilmek istenen web sunucuyu değiştirebilir.

DHCP Rogue Attack Prevention

DHCP Rougue atağından korunmak için DHCP snooping özelliği aktif hale getirilmelidir.

DHCP  SNOOPING

Ortamda bulunan dhcp sunuculara ait portları trusted olarak işaretleyerek ağda güvenliği sağlar. Böylelikle ortama bilerek veya bilmeyerek dahil edilen bir başka dhcp sunucudan kaynaklı sorun ve güvenlik problemi bu şekilde aşılmış olur. Ayrıca üzerindeki portlardaki client istemcilerin aldıkları ip adreslerini kendisi bir veritabanında (DHCP Snooping Binding) tutmaya başlar. Switch üzerindeki untrusted portlarından gelen DHCP offer mesajlarını engeller. DHCP mesajını gönderecek port trust olarak işaretlenmelidir.

1-) DCHP snooping switch enable edilmelidir.

Switch(config)# ip dhcp snooping

2-) Vlan’da enable edilir.

Switch(config)# ip dhcp snooping vlan_no 

3-) Trusted portlar belirlenir.

Switch(config)# interface FastEthernet0/0

Switch(config-if)# ip dhcp snooping trust

4-) Show komutu

Switch# show ip dhcp snooping binding

Switch# show ip dhcp snooping

2-) DHCP Starvation Attack

Saldırganın mac adresini değiştirerek ortamdaki DHCP sunucunun ip havuzunu tüketmesidir. Sunucudaki ip havuzunu tüketen saldırgan istemcilerin ip almasını engelleyerek ağa dahil olmasını engeller. DHCP Starvation saldırısından korunmak için istemci portundan çıkan dhcp paketine limit koyulabilir.

Switch(config)#interfacerangefastEthernet 0/1-24

Switch(config-if-range)#ip dhcpsnooping limit rate 6

ARP Poisoning Attack

ARP ( Adres Çözümleme Protokolü ) ip adreslerine sahip cihazların mac adreslerini öğrenmesi için kullanılan protokoldür.

Senaryo

  1. Aşağıdaki örnekte PC 7 Router aracılığıyla internete çıkmak istiyor. Ama router mac adresini bilmediği için Ethernet paketini hazırlaması için arp sorgusu yaparak router mac adresini öğrenmek istiyor. Switch gelen broadcast Arp request  isteği (FF:FF:FF:FF:FF:FF) switch tarafından bütün portlara yollanır
  1. PC 9 ve diğer bilgisayarlar paketi kontrol edip kendine gelmediğini anlayıp paketi çöpe atar. Router paketi kendine geldiğini anlar ve kendi mac adresinin olduğu ARP reply (geri dönüş) paketi hazırlayıp unicast olarak yollar.
  1. Broadcast olarak saldırganada gelen arp request paketi, saldırgan tarafından kullanılmaya başlanır. PC 7 nin istediği adres kendisininmiş gibi cevap yollayarak PC 7 arp tablosunda 10.0.0.1 mac adresini kendi adresi yapabilir.
  1. Saldırgan aynı atağı router için bu sefer PC 7 miş gibi yaparak Router üzerindeki mac adresini değiştirebilir.
  1. Böylelikle saldırgan PC7 ile Router arasına girmiş oldu. PC 7 ethernet paketi hazırladığında Router mac adresi yerine saldırganın mac adresi bildiği için bunu kullanacak. Switch anahtarlamayı mac adresine göre yaptığı için switch paketi saldırgana yollanacak. Saldırganda paketi PC 7 miş gibi router yönlendirme yapacak.

ARP Poisoning Attack Prevention 

 Switch üzerinde Dynamic ARP Inspection aktif yapılarak atak engellenir. Dynamic Arp inspection kullanabilmek için DHCP snooping aktif olması şarttır. DHCP snooping öğrendiği mac adresi ve ip adreslerini kendisi veritabınında (DHCP snooping binding)  sakladığı için bu veritabanı kullanılarak ip reply paketleri bu veritabanı içerisindeki  mac ve ip adresleri doğrulama yapılır. DHCP harici tanımlanan statik ip adresleri için inspection ACL yazılmalıdır.

Switch(config)#interface range fa 0/1-20

Switch(config-if-range)#ip arp inspection

Not: Trunk portlarda birden fazla mac ve ip adresi akacağı için bu portlar trust yapılmalı.

Switch(config)#interface gigabitEthernet 0/1

Switch(config-if)#ip arp inspectiontrust

Address Spoofing Attack

Saldırganın başkasının adresi ile trafik oluşturmasıdır. Kendisini başkasının MAC adresini kullanarak paket oluşturup, dönüş trafiğini kendisine çekerek atak yapmasıdır.

Address Spoofing Attack Prevention

Address spoofing atağından korunmak için DHCP snooping veritabanından (DHCP snooping binding) yararlanacağız. Sonuç itibari ile bu veritabanında istemcinin aldığı ip adresi ve mac adresi kayıt altındadır.

Switch(config)#interface range fastEthernet 0/1-20

Switch(config-if-range)#ip verify source (ip adresine göre kontrol eder)

Switch(config-if-range)#ip verify source port-security (ip adresi ve mac adresine göre kontrol eder)

Switch#sh ip verify source

Not: Statik ip verilen cihazlar için switch ip ve mac adresini dynamic olarak öğrenemeyeceği için statik olarak giriş yapmak gerekir. Bu statik giriş yapılmadığı taktirde bu korumalar aktif aktifleştirilirse statik ip sahip kullanıcıların network bağlantısı kopacaktır.

switch(config)# ip source binding macaddress vlan noip_address interface no

Switch(config)#ip source binding F0-55-1C-G5-84-EC vlan 5 10.14.12.112 interface gigabitEthernet 0/2

 

STP (SpanningTree Protocol) Attacks

STP  hakkında ayrıntılı bilgiye buradan ulaşabilirsiniz.

STP Attack

Ağdaki herhangi bir bilgisayarın switch gibi davranıp BPDU paketi yollayarak ağdaki root bridge değiştirmesidir.

STP Attack Prevention

Switch üzerinde diğer switch ile bağlantı yapılmayan portlarda  BPDU Guard açılmalıdır. BPDU paketleri switchler arasında oluşması gereken pakettir. Böyle bir paket istemci portundan gelmemesi gerekir. Şahet o porttan BPDU paketleri geliyorsa, porta ya bir switch bağlanmıştır yada  bilgisayar STP atak yapmaya başlamıştır. BPDU guard özelliği aktifleştirirsek o porttan gelen  BPDU paketi algıladığında portu kapatacaktır.Böylelikle porta switch bağlandıysa loop olmaktan,  bilgisayar tarafından atak yapıldıysada yapılan atağı sonlandıracaktır.

Switch(config)#interface range fastEthernet 0/1-20

Switch(config-if)#spanning-tree bpduguard enable

 

 

 

 

Ör: DHCP snooping ve DAI konfigurasyonu

 

10.39.10.5

 

ip dhcp snooping

no ip dhcp snooping information option (DHCP discover mesajlarına option 82 eklenmemesini sağlar)

ip dhcp snooping database flash:dhcpbinding.txt (DHCP binding database yerini belirler)

ip dhcp snooping vlan 1,10,20,30,40,50, (DHCP snooping uygulanacağı vlan’lar belirlenir)

———

ip arp inspection vlan 1,10,20,30,40,50,60,166

ip arp inspection filter STATIC_VLAN40 vlan  40

ip arp inspection filter STATIC_VLAN50 vlan  50

——-

 

arp access-list STATIC_VLAN40

permit ip host 10.34.40.11 mac host 84ba.3b9a.bfc8

permit ip host 10.34.40.12 mac host f481.39b5.7173

permit ip host 10.34.40.13 mac host 84ba.3b9a.67aa

permit ip host 10.34.40.14 mac host 84ba.3b9a.c04b

permit ip host 10.34.40.15 mac host 0000.8583.964e

———-

 

interface Port-channel1

switchport mode trunk

ip arp inspection trust

ip dhcp snooping trust

 

 

sh ip dhcp snooping

sh ip dhcp snooping binding 

more flash:dhcpbinding.txt

Share