28 Mayıs 2015 Perşembe

MAC Flood Saldırısı

Merhaba Arkadaşlar,

Bu yazıda MAC flood saldırı tekniğini anlatacağım. Bu saldırıyı, size bir önceki yazımda tanıttığım GNS3 ortamında gerçekleştireceğim.

Uygulamaya geçmeden önce MAC Flood saldırısı nedir, açıklamaya çalışayım.

Her ethernet anahtarın(Switch) belli sayıda MAC adresini muhafaza ettiği bir MAC tablosu bulunur. MAC Tablosu hangi MAC adresine hangi porttan çıkış yapılacağını belirler. Eğer switch'e bu tabloda bulunmayan bir MAC adresini hedef alan bir paket gelirse, switch bu paketi bütün portlarından gönderir. Bu olaya Bilinmeyen Unicast Taşması (Unknown Unicast Flooding) denir. MAC Flood saldırısı, bu durumu ortaya çıkarıp switch'in saldırganın istediği şekilde davranmasını sağlamaya çalışır. Bu durumun ortaya çıkması için saldırgan switch'in MAC tablosunu doldurmak için, kendi MAC adresini değiştirerek ard arda paketler gönderir. Bilinmeyen Unicast Taşması oluştuğunda, tabloda olmayan MAC adreslerini hedef alan paketler bütün portlardan yayınlanacağı için hedef bilgisayarın trafiği elde edilebilir, bu sırada hedef bilgisayar ağdaki diğer bilgisayarlar ile haberleşmeye devam eder. Ancak switch'te birden fazla sanal yerel alan ağı(VLAN) varsa saldırgan sadece kendi sanal yerel alan ağındaki bilgisayarların paketlerine ulaşabilir.

Temel teorik bilgileri de verdiğimize göre uygulamaya geçebiliriz. Bir önceki yazıda kurmuş olduğumuz sanal ağı bu senaryomuzda kullanabiliriz. Tabiki siz senaryonuzu daha geniş çaplı bir ağda da gerçekleştirebilirsiniz.

Ekran Görüntüsü 1: Sanal Ağın Oluşturulması ve Cihazların Başlatılması

Yukarıdaki ekran görüntüsündeki ağdaki cihazların IP adresleri şu şekilde;
Kali=192.168.137.83
TinyCore=192.168.137.106
TinyCore_7=192.168.137.27
Internet=192.168.137.1

Switch'e  sağ tıklayıp MAC Adress Table 'a tıkladığımızda başlangıç durumundaki MAC Adreslerini görebiliriz.

Ekran Görüntüsü 2: Başlangıç durumundaki MAC Adres Tablosu

Hedef bilgisayar olarak TinyCore_7 isimli bilgisayarı seçtim. Bu bilgisayarı switch'e 4 nolu portundan bağlamıştım. 

Şimdi Kali tarafına geçiyorum. Saldırıyı başlatmadan önce Wireshark programını dinlemeye alıp, ICMP filtrelemesi yapacağım ki saldırının gerçekleştiğini daha rahat görebilelim.

Ekran Görüntüsü 3:Saldırıdan önce Wireshark 

Bu saldırı için switch'in MAC adres tablosunu doldurup, Bilinmeyen Unicast Taşmasına sebep olmamız gerektiğinden bahsetmiştim. Bunu Macof aracını kullanarak gerçekleştireceğim. Kali'de bir konsol açıp şu komutu giriyoruz. 

# macof -i eth1 

Bu komutta, eth1 ilgili ağ arayüzünü temsil etmektedir.

Ekran Görüntüsü 4: Macof aracı ile Bilinmeyen Unicast Taşmasının sağlanması

Şimdi tekrar switch'in MAC adres tablosunu kontrol ettiğimizde tablodaki girdi sayısının fazlalığını görebiliriz. Bu girdi kirliliğinin, Kali'nin switch'e bağlı olduğu porttan gerçekleştiğini de görüyoruz.

Ekran Görüntüsü 5: Saldırı başladıktan sonra MAC Adres Tablosunun Durumu

Şimdi hedef bilgisayarın trafiğinin, bilinmeyen unicast taşması sayesinde switch'in diğer portlardan yayınlamasını görelim.Bunu görebilmek için de hedef bilgisayarımız olan TinyCore_7'den www.google.com 'a ping atalım.

Ekran Görüntüsü 6: Hedef bilgisayardan www.google.com adresine ping atılması

Wireshark'ta trafiğe baktığımızda görüyoruz ki hedef bilgisayarın paketlerine ulaşabiliyoruz artık.

Ekran Görüntüsü 7: Saldırı sonrası Wireshark'ta gözlenen trafik

Toparlayacak olursak, aynı ağda hatta aynı Vlan'da (Sonraki yazılarımda anlatacağım.) olduğumuz bir bilgisayarı hedef olarak seçip, trafiğini ele geçirebilmek için bağlı olduğumuz switch'in MAC adress tablosunu dolduruyoruz böylece switch hedef bilgisayarın MAC adresini unuttu. Tekrar öğrenebilmek için hedef bilgisayara gitmesi gereken paketleri bütün portlarından yayınladı.Senaryomuzdan örnek verecek olursak, hedef bilgisayardan www.google.com' a ping atıldığında bu paketler switch üzerinden sadece ağ geçidine gitmesi gerekirken ağdaki bütün bilgisayarlara gönderildi. Aynı şekilde, internet üzerinden gelen paketlerin de sadece hedef bilgisayara gitmesi gerekirken ağdaki bütün bilgisayarlara gönderildi.Bu şekilde hedef bilgisayarın bütün trafiğini ele geçirmek mümkün değil çünkü ne kadar switch'e saldırıda bulunsak da switch hedefin MAC adresini tekrar öğrenecek ve paketler sadece hedefe gidecek.Saldırının sürekli olması için switch'in hedefi unutması yani MAC girdilerinin sürekli devam etmesi gerekir.Bu durum internetten gelen paketler içinde geçerlidir.

Umarım sizlere faydalı olacak bir yazı olmuştur. Bir sonraki yazıda görüşmek üzere.

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















2 yorum:

  1. ethernet switch e sağ tıkladığımda mac adres tablosunu görüntüleyemiyorum. Sebebi nedir sizce?

    YanıtlaSil
  2. Görüntülemeye çalıştığınızda bir hata mesajı ile karşılaşıyor musunuz? Ekran görüntüsü paylaşabilir misiniz?

    YanıtlaSil