1 Haziran 2015 Pazartesi

802.1Q Protokolüne Saldırı(VLAN Hopping)

Merhaba Arkadaşlar,

Bu yazıda, 802.1Q protokolüne yapılan bir saldırı tipi olan VLAN hopping'i anlatacağım. Daha önceki yazılarımda da adını anmak zorunda olduğum VLAN'ı bu yazımda daha ayrıntılı açıklamaya çalışacağım.

Saldırıdan önce VLAN(Virtual Local Area Network) nedir, sorusunu cevaplayalım. Bir switch'e bağlı cihazlar aksi bir yapılandırma yoksa aynı VLAN'dadırlar(Native VLAN) bu da demek oluyor ki broadcast olarak yayınlanan paketler switch'in bütün portlarından yayınlanırlar. Bu trafikten bütün cihazların ve bağlantıların etkilenmemesi için sanal yerel alan ağı yani VLAN'lar kurulur, böylece güvenli bir ortamda sağlanmış olur.(Hatırlayacak olursak MAC Flood, ARP Spoof, DHCP Spoof saldırılarını gerçekleştirebilmemiz için aynı VLAN'da olmamız gerekir.) Her VLAN kendi IP bloğuna ve ağ geçidine sahiptir. VLAN'ların birbirleriyle haberleşebilmeleri için Router'da gerekli yapılandırmaların yapılmış olması gerekir.

802.1Q protokolünden önce belli bir VLAN'a ait paket, bir switch'ten diğer switch'e gönderilirken kendisine özel bir bağlantı tahsis edilirdi. Bu durum kablo karmaşasını da beraberinde getirirdi. Bu durumun kullanılmasının zorunlu olduğu durumlar olsa da, birden fazla VLAN'a ait paketler artık tek bir bağlantı üzerinden gönderilebilmektedir. Bu da 802.1Q protokolü (Trunking) sayesinde gerçekleşmektedir. Bu protokol, paketlerin hangi VLAN'a aitse o VLAN'ın etiketiyle paketlenmesini sağlar. Yani bir switch'e VLAN 10 'a ait bir paket geldiğini farzedelim, bu paket switch'in VLAN 10 'a tahsis edilmiş bağlantılarından ve trunk olarak yapılandırılmış bağlantılarından gönderilir. Aşağıdaki iki örnek ağı incelersek, 802.1Q protokolü olan ve olmayan ağlar arasındaki farkı daha net görebiliriz.

Ekran Görüntüsü 1: 802.1Q Protokolü kullanılmayan ağ

Ekran Görüntüsü 2: 802.1Q Protokolü kullanılan ağ


VLAN Hopping saldırısını gerçekleştirebilmemiz için bağlı olduğumuz switch arayüzünün herhangi bir VLAN'a atanmamış olması yani native VLAN arayüzünde olmamız gerekir. Bizim bilgisayarımız dan gönderilen paket iki VLAN etiketi taşır. Birincisi hedef VLAN'ın etiketi, ikincisi switch tarafından eklenen native VLAN etiketi. Hedef bilgisayarın bağlı olduğu switch, bizim çift etiketli paketimizin, native VLAN etiketini çıkartıcak. Paketimiz switch'e hedef VLAN'ın etiketiyle ulaşacağı için paketimiz switch'in o VLAN'a ait portlarından yayınlanacak. Böylece giriş iznimizin olmadığı bir VLAN'a paket yollamış olacağız.

Bu saldırı tekniğini de daha önce kullandığım GNS3 ortamında gerçekleştireceğim. Daha önce kullanmamış olanlar, bu programı tanıttığım yazıdan faydalanabilirler. Aşağıdaki bağlantıdan bu yazıya ulaşabilirsiniz. 

http://msesli.blogspot.com.tr/2015/05/gns3-ile-sanal-network-laboratuvar.html

Aşağıdaki network'ü kurup başlatalım.

Ekran Görüntüsü 3: Saldırının gerçekleştirileceği network

Cihazları başlattıktan sonra, Cisco EtherSwitch Router'larda birkaç yapılandırma yapmamız gerekiyor. Switchlerin konsoluna ulaşmak için switch'in üstünde sağ klik'ten sonra "console" 'u seçiyoruz. Aşağıdaki komutları sırasıyla giriyoruz.
R1 için;

#vlan database
(vlan)#vlan 10 name account
(vlan)#vlan 1 name management
(vlan)#apply
(vlan)#exit
#configure terminal
(config)#interface fastethernet 1/14
(config-if)#switchport mode trunk
(config-if)#no shutdown
(config-if)#exit
(config)#exit
#copy running-config startup-config

R2 için;

#vlan database
(vlan)#vlan 10 name account
(vlan)#vlan 1 name management
(vlan)#apply
(vlan)#exit
#configure terminal
(config)#interface fastethernet 1/14
(config-if)#switchport mode trunk
(config-if)#exit
(config)#interface fastethernet 1/15
(config-if)#switchport mode access
(config-if)#switchport access vlan 10
(config-if)#no shutdown
(config-if)#exit
(config)#exit
#copy running-config startup-config

Bu yapılandırma şu anlama geliyor. R1 switch'inin 1/15 nolu arayüzü Kali'ye bağlı ve native VLAN'da, 1/14 nolu arayüzü ise trunk mode'da. R2 switch'inin 1/14 nolu arayüzü trunk mode'da ve 1/15 nolu arayüzü Windows cihazına bağlı VLAN 10 olarak yapılandırılmış. 

Senaryomuz ise şu şekilde bir şirket ağının native VLAN'ı yönetim için VLAN 10 ise muhasebe departmanı için ayrılmış. Yönetim VLAN'ına bir şekilde dahil olan saldırganın, giriş hakkı olmayan muhasebe departmanının bilgisayarlarına paket gönderebilmesini işliyeceğiz.("Yönetimdekilerin nasıl muhasebe departmanına giriş izni olmaz?" demeyin senaryo işte :) ).

Windows bilgisayarının IP adresini 10.10.10.10, ağ maskesini 255.255.255.0 ve ağ geçidini 10.10.10.1 olarak ayarlıyoruz. Paketin ulaşıp ulaşmadığını gözlemlemek için Windows'ta Wireshark'ı açıyoruz ve icmp filtre seçeneğini aktif ediyoruz.

Ekran Görüntüsü 4: Windows'ta Wireshark ile trafiğin gözlenmesi

Daha önce, paketin çift VLAN etiketi taşıması gerektiğinden bahsetmiştim. Bunu Yersinia aracı ile sağlayacağız. Kali'de konsola "yersinia -I" komutunu girerek programı başlatıyoruz. İlgili ağ arayüzünü seçtikten sonra "g" tuşuna basarak saldırı hazırlayacağımız paketin protokolünü seçiyoruz.

Ekran Görüntüsü 5: Yersinia programında 802.1Q protokolünün seçilmesi

Şimdi paketin parametrelerini şu şekilde ayarlıyoruz. Edit mode 'a geçmek için "e" yi tuşluyoruz.

Source IP =10.10.10.1
Netmask=255.255.255.0
VLAN 1=0001
VLAN 2=0010

Bu parametrelerle, paket hedefin ağ geçidinden geliyormuş gibi gözükücek. VLAN1 ve VLAN2 de etiketleyeceğimiz VLAN'lar. Enter'ı tuşlayıp, edit mode'dan çıkıyoruz. Şimdi saldırı tipini seçmek için "x" i tuşluyoruz ve 1.seçenek olan "sending 802.1Q double enc. packet" 'i seçiyoruz. Böylece paketi göndermiş oluyoruz.

Ekran Görüntüsü 6: Çift etiketli paketin gönderilmesi

Şimdi Windows bilgisayarında açtığımız Wireshark'a dönüyoruz. Yakaladığımız paketin MAC adresini kontrol ettiğimizde, paketimizin VLAN 10'a ulaştığını görebiliriz.

Ekran Görüntüsü 7: VLAN 10'a ulaşan paketin Windows'ta gözlenmesi

Bu saldırı ile VLAN 10'dan cevap paketini alamayız çünkü bizim bağlı olduğumuz switch bu paketi VLAN 10'a tahsis edilmiş bağlantı olmadığı için düşürür. Tek yönlü bir saldırıdır. UDP portlarını kullanan servislere istenmeyen paket gönderilmesinde kullanılabilir.(Log sunucuya sahte kayıt girilmesi)

VLAN nedir, 802.1Q protokolü ne işe yarar, VLAN Hopping saldırısı nasıl gerçekleştirilir sorularını cevaplandırmaya çalıştım. Umarım başarılı olabilmişimdir. Bir sonraki yazıda görüşmek üzere.
  

Yararlandığım Kaynak:
Gökhan USTA,"BİLGİSAYAR AĞLARINDA SALDIRI ve SAVUNMA"








Hiç yorum yok:

Yorum Gönder