MAC Flooding Attack (MAC Taşması Saldırısı)

MAC Flooding Attack, ağ anahtarlarını (switch) hedef alan bir siber saldırı türüdür. Bu saldırı, özellikle yerel ağlarda (LAN – Local Area Network) çalışır ve switch’in normal çalışma mantığını bozarak ağ trafiğini “hub gibi davranmaya” zorlar.

Amaç genellikle:

  • Ağ trafiğini dinlemek (sniffing)

  • Güvenliği zayıflatmak

  • Yanlış yönlendirme davranışı oluşturmak


2. MAC Adresi Nedir?

MAC (Media Access Control) adresi, her ağ cihazına üretici tarafından verilen benzersiz fiziksel kimliktir.

Örnek:

00:1A:2B:3C:4D:5E

Switch’ler bu adresleri kullanarak hangi cihazın hangi portta olduğunu öğrenir ve veri iletimini buna göre yapar.


3. Switch’lerin Çalışma Mantığı

Normalde bir switch:

  1. Gelen paketin kaynak MAC adresini öğrenir

  2. Bu adresi ve bağlı olduğu portu MAC adres tablosuna (CAM Table) kaydeder

  3. Hedef MAC adresine göre doğru porta yönlendirme yapar

Bu sayede:

  • Trafik sadece ilgili cihaza gider

  • Ağ verimli ve güvenli çalışır


4. MAC Flooding Attack Nedir?

MAC Flooding Attack, switch’in MAC adres tablosunu sahte veya çok sayıda MAC adresi ile doldurma saldırısıdır.

Saldırgan:

  • Çok sayıda sahte MAC adresi üretir

  • Switch’e sürekli trafik gönderir

  • CAM tablosunun kapasitesini doldurur


5. Saldırının Sonucu Nedir?

Switch’in MAC tablosu dolduğunda:

  • Switch yeni MAC adreslerini öğrenemez

  • “Unknown unicast flooding” başlar

  • Tüm trafik tüm portlara yayılır

Bu durumda switch, artık bir hub gibi davranır.


6. Saldırının Etkileri

MAC Flooding saldırısının sonuçları:

🔴 1. Trafik Dinleme (Sniffing)

Aynı ağdaki diğer kullanıcıların verileri yakalanabilir.

🔴 2. Gizlilik İhlali

Şifreler, oturum bilgileri ve hassas veriler risk altına girer.

🔴 3. Ağ Performans Düşüşü

Ağda gereksiz trafik artar ve gecikme oluşur.

🔴 4. Servis Kesintileri

Bazı cihazlar ağ bağlantısını kaybedebilir.


7. Saldırı Nasıl Tespit Edilir?

Aşağıdaki belirtiler MAC Flooding saldırısını gösterebilir:

  • Switch MAC tablosunun çok hızlı dolması

  • Ağda anormal broadcast trafiği

  • Performansın ani düşmesi

  • Ağ izleme araçlarında bilinmeyen MAC adresleri


8. Savunma Yöntemleri

🛡️ 1. Port Security (En Etkili Yöntem)

Switch portlarına MAC sınırı koyulur.

Örnek:

  • Bir porta sadece 1–2 MAC adresi izin verilir


🛡️ 2. MAC Adresi Limitleme

Her port için maksimum MAC sayısı belirlenir.


🛡️ 3. Dynamic ARP Inspection (DAI)

Sahte ağ trafiğini filtreler.


🛡️ 4. DHCP Snooping

Sahte IP–MAC eşleşmelerini engeller.


🛡️ 5. Ağ İzleme Sistemleri

IDS/IPS sistemleri ile anormal trafik tespit edilir.


🛡️ 6. VLAN Segmentasyonu

Ağ küçük parçalara bölünerek saldırı etkisi azaltılır.


9. Gerçek Dünya Kullanım Alanı (Risk Senaryosu)

MAC Flooding genellikle:

  • Kurumsal LAN ağlarında

  • Okul ağlarında

  • Açık Wi-Fi ortamlarında

test veya saldırı amaçlı kullanılabilir.

Özellikle saldırgan, ağ trafiğini dinlemek için bu yöntemi diğer saldırılarla birlikte kullanabilir.


10. Özet

MAC Flooding Attack:

  • Switch’in MAC tablosunu doldurur

  • Switch’i hub gibi çalışmaya zorlar

  • Ağ trafiğini görünür hale getirir

  • Güvenlik ve gizlilik riskleri oluşturur

Ancak modern ağ cihazları, Port Security gibi yöntemlerle bu saldırıya karşı oldukça iyi korunabilir.


Aşağıda MAC Flooding saldırısının laboratuvar ortamında etik ve güvenli şekilde nasıl simüle edileceğini adım adım anlatıyorum. Bu anlatım gerçek ağa zarar vermeyecek şekilde sadece eğitim ve test (pentest lab) mantığıyla hazırlanmıştır.


🧪 MAC Flooding Attack – Güvenli Laboratuvar Simülasyonu

1. ⚠️ Önemli Etik Uyarı

Bu test:

  • Sadece izole sanal ağlarda

  • Kendi kurduğun lab ortamında

  • Gerçek kurumsal/okul ağlarından tamamen bağımsız sistemlerde

yapılmalıdır.

Gerçek ağlarda izinsiz denemek:

  • Yasal suçtur

  • Ağ kesintisine neden olabilir


2. 🧱 Laboratuvar Ortamı Kurulumu

🖥️ Gerekli sistemler:

  • 1 adet attacker (saldırgan) VM

    • Kali Linux

  • 1 adet switch simülasyonu

    • GNS3 / EVE-NG / Cisco Packet Tracer (tercihen GNS3)

  • 1–2 adet target (hedef) VM

    • Ubuntu / Windows

  • (Opsiyonel) Wireshark analiz sistemi


🧩 Basit topoloji:

[ Kali Linux ]
       |
   (Switch)
   /      \
[PC1]    [PC2]

3. 🔧 Kullanılacak Araçlar

Kali Linux içinde:

  • macof (dsniff paketi)

  • tcpdump

  • wireshark

Kurulum:

sudo apt update
sudo apt install dsniff

4. ⚙️ Simülasyonun Mantığı

MAC Flooding şu şekilde çalışır:

  • Switch’e çok sayıda sahte MAC adresi gönderilir

  • CAM (MAC) tablosu doldurulur

  • Switch yeni adresleri öğrenemez

  • Trafik broadcast gibi yayılmaya başlar


5. 🚀 Saldırı Simülasyonu (Lab Ortamı)

🧪 Adım 1 – Ağ durumunu gözlemle

Hedef makinelerde:

ip a

Ping testi:

ping 8.8.8.8

🧪 Adım 2 – Switch MAC tablosunu kontrol et (opsiyonel)

Eğer Cisco simülasyonu varsa:

show mac address-table

🧪 Adım 3 – MAC Flooding başlat

Kali Linux üzerinde:

sudo macof

Bu komut:

  • Sürekli rastgele MAC adresleri üretir

  • Switch’e yoğun trafik gönderir


🧪 Adım 4 – Trafik etkisini gözlemle

Aynı anda:

Wireshark:

  • Broadcast paketleri artar

  • Bilinmeyen MAC adresleri çoğalır

Hedef makineler:

  • Ping gecikmeleri

  • Paket kayıpları

  • Ağ yavaşlaması


🧪 Adım 5 – Switch davranışını incele

Switch artık:

  • MAC öğrenemez

  • Tüm portlara trafik göndermeye başlar

Bu durum:
👉 “Hub gibi çalışma” etkisi oluşturur


6. 📊 Beklenen Sonuçlar

DurumNormalSaldırı Sonrası
MAC öğrenmeStabilBozulur
Trafik yönlendirmeDoğru portTüm portlara yayılır
PerformansHızlıYavaş
GüvenlikYüksekDüşer

7. 🛡️ Savunmayı Test Etme (Önemli Bölüm)

Aynı lab içinde şu korumaları açıp tekrar test edebilirsin:

🔒 Port Security (Cisco örnek)

switchport port-security
switchport port-security maximum 2
switchport port-security violation restrict

🧪 Sonuç:

Port security aktifse:

  • MAC flooding etkisi durur

  • Port otomatik bloklanır

  • Saldırı başarısız olur


8. 📡 Wireshark ile analiz

Filtre:

eth.addr

veya:

eth.dst == ff:ff:ff:ff:ff:ff

Gözlenecekler:

  • Broadcast patlaması

  • Anormal MAC çeşitliliği

  • Tek kaynaktan çok paket


9. 🧠 Öğrenme Özeti

Bu simülasyonda öğrendiğin şeyler:

  • Switch MAC öğrenme mantığı

  • CAM table yapısı

  • Layer 2 saldırı yüzeyi

  • Port security’nin önemi

  • Trafik analiz yöntemleri


10. 🔐 Sonuç

MAC Flooding saldırısı:

  • Modern ağlarda eski ama öğretici bir saldırı modelidir

  • Genellikle eğitim ve pentest ortamlarında kullanılır

  • Gerçek sistemlerde güçlü switch güvenlikleri ile engellenebilir


🧪 macof Kullanımı – Ayrıntılı Eğitim Makalesi (MAC Flooding Aracı)

1. Giriş

macof, Linux tabanlı sistemlerde kullanılan ve MAC Flooding saldırısını simüle etmek için geliştirilmiş bir ağ test aracıdır. Genellikle dsniff paketi içinde bulunur.

Bu araç, eğitim amaçlı olarak:

  • Switch’lerin MAC öğrenme davranışını test etmek

  • Layer 2 güvenlik açıklarını göstermek

  • Port Security gibi savunmaları denemek

için kullanılır.

⚠️ Önemli: macof gerçek ağlarda kullanıldığında ciddi ağ kesintilerine yol açabilir. Bu yüzden yalnızca izole laboratuvar ortamlarında kullanılmalıdır.


2. macof Nedir?

macof, rastgele MAC ve IP adresleri üretip ağ üzerinden çok hızlı şekilde paket gönderir.

Bu sayede:

  • Switch MAC tablosu dolar (CAM table overflow)

  • Switch yönlendirme yapamaz hale gelir

  • Ağ trafiği yayılır (broadcast etkisi)


3. Kurulum

macof, genellikle dsniff paketinin içinde gelir.

🔧 Debian / Ubuntu / Kali Linux:

sudo apt update
sudo apt install dsniff

Kurulumdan sonra kontrol:

macof -h

4. macof Temel Çalışma Mantığı

macof şu işlemleri yapar:

  1. Rastgele source MAC adresi üretir

  2. Rastgele destination MAC adresi üretir

  3. Rastgele IP paketleri oluşturur

  4. Ağa sürekli paket gönderir

Bu süreç saniyede binlerce sahte adres üretebilir.


5. Temel Kullanım

En basit kullanım:

sudo macof

Bu komut:

  • Varsayılan ağ arayüzünü kullanır

  • Sürekli sahte Ethernet frame üretir

  • Switch CAM tablosunu doldurmayı hedefler


6. Seçenekler (Options) – Eğitim Amaçlı Açıklama

macof bazı parametrelerle davranışını değiştirebilir:

📌 Interface seçimi

sudo macof -i eth0

👉 Belirli bir ağ kartı üzerinden trafik üretir.


📌 Paket sayısı sınırlama

sudo macof -n 1000

👉 Belirli sayıda paket gönderip durur (test için daha güvenli)


📌 Source/Destination port ayarı

sudo macof -s 12345 -d 80

👉 TCP/UDP portlarını sabitler (analiz için kullanılır)


📌 Hız kontrolü (daha kontrollü test)

sudo macof -i eth0 -n 500

👉 Daha düşük ölçekli simülasyon sağlar


7. Laboratuvar Kullanım Senaryosu

🧱 Topoloji:

Kali (macof)  →  Switch  →  Target PC’ler

🎯 Amaç:

  • Switch MAC tablosunun dolmasını gözlemlemek

  • Trafik davranışını analiz etmek

  • Savunma mekanizmalarını test etmek


8. Etki Analizi

macof çalıştığında gözlemlenen etkiler:

📉 Switch Üzerinde:

  • CAM table hızla dolar

  • Yeni MAC adresleri öğrenilemez

  • Flooding (broadcast) başlar

🖥️ Hedef makinelerde:

  • Ping gecikmesi

  • Paket kaybı

  • Ağ yavaşlaması

📡 Wireshark’ta:

  • Çok sayıda farklı MAC adresi

  • Anormal broadcast trafiği

  • Tek kaynaktan yoğun paket akışı


9. Tespit Yöntemleri

macof saldırısı şu şekilde tespit edilebilir:

🔍 1. MAC Tablo anomalisi

  • Çok kısa sürede yüzlerce MAC öğrenilmesi

🔍 2. Broadcast artışı

  • ff:ff:ff:ff:ff:ff trafiği yükselir

🔍 3. IDS/IPS uyarıları

  • Layer 2 flooding alert


10. Savunma Yöntemleri

🛡️ Port Security (en etkili yöntem)

  • Port başına MAC limiti koyar

  • Aşım olursa port kapatılır

🛡️ MAC Limitleme

  • Örn: 1–2 MAC adresi/port

🛡️ VLAN Segmentasyonu

  • Ağ küçük parçalara bölünür

🛡️ Storm Control

  • Broadcast / multicast trafiği sınırlar


11. macof’un Güvenli Eğitim Kullanımı

Eğitim ortamında doğru kullanım şekli:

✔️ Küçük ölçekli test (100–1000 paket)
✔️ İzole sanal ağ
✔️ Wireshark ile analiz
✔️ Savunma mekanizmalarını karşılaştırma


12. Özet

macof:

  • MAC Flooding saldırısını simüle eden bir araçtır

  • Layer 2 güvenlik açıklarını göstermek için kullanılır

  • Switch’in CAM tablosunu doldurarak ağ davranışını değiştirir

  • Doğru şekilde kullanıldığında güçlü bir eğitim aracıdır


Bir siber güvenlik müfredatında veya laboratuvar ortamında öğrencilere Veri Bağlantı Katmanı (Layer 2) zafiyetlerini anlatırken kullanabileceğiniz yapılandırılmış bir eğitim makalesi aşağıdadır.


Siber Güvenlik Laboratuvarı: MAC Flooding (MAC Taşması) Saldırısı ve Analizi

MAC Flooding (MAC Taşması), ağ altyapısının temel yapı taşlarından olan ağ anahtarlarını (switch) hedef alan, OSI Modelinin 2. katmanında (Veri Bağlantı Katmanı) gerçekleştirilen bir saldırı türüdür. Bu saldırının temel amacı, ağ anahtarını manipüle ederek ağdaki trafiği izlenebilir (sniffing) hale getirmektir.

1. Temel Kavramlar: Ağ Anahtarları ve CAM Tablosu

Saldırının mantığını kavramak için öncelikle bir ağ anahtarının veriyi nasıl yönlendirdiğini anlamak gerekir.

Ağ anahtarları, cihazları birbirine bağlar ve gelen veri paketlerini (frame) sadece hedeflenen cihaza gönderir. Bunu yapabilmek için CAM (Content Addressable Memory - İçerik Adreslenebilir Bellek) tablosu adı verilen dinamik bir veritabanı kullanırlar.

  • Öğrenme Süreci: Bir cihaz ağa bağlandığında ve veri gönderdiğinde, switch bu cihazın MAC adresini ve bağlı olduğu fiziksel port numarasını CAM tablosuna kaydeder (Örn: 00:1A:2B:3C:4D:5E -> Port 1).

  • Yönlendirme: Switch'e bir paket geldiğinde, hedef MAC adresini CAM tablosunda arar. Eşleşme bulursa, paketi sadece o porta iletir. Bu, ağ trafiğini güvenli ve performanslı kılar.

2. Saldırının Anatomisi

CAM tablolarının donanımsal bir kapasitesi vardır (örneğin, 8.000 veya 16.000 kayıt). MAC Flooding saldırısı, bu kapasite sınırını istismar eder.

  1. Sahte Paket Üretimi: Saldırgan, (örneğin Kali Linux üzerinde macof gibi araçlar kullanarak) saniyede on binlerce rastgele, sahte kaynak MAC adresi ve IP adresi içeren veri paketi üretir.

  2. Tablonun Doldurulması: Bu sahte paketler switch'e ulaştığında, switch iyi niyetli bir şekilde her bir yeni MAC adresini öğrenmeye çalışır ve bunları CAM tablosuna yazar.

  3. Kapasite Aşımı: Saniyeler içinde switch'in CAM tablosu tamamen dolar.

3. Sonuç: "Fail-Open" Durumu (Hub Moduna Geçiş)

Bir switch'in CAM tablosu dolduğunda, cihazın belleği çökmek yerine güvenlik açısından riskli ama ağın çalışmaya devam etmesini sağlayan bir karar alır. Bu duruma "Fail-Open" denir.

  • Tablo dolduğunda, switch ağdaki meşru cihazların MAC adreslerini kaydedemez veya nereye göndereceğini bilemez.

  • Bu durumda switch, gelen bir paketi hedef porta yönlendirmek yerine, paketi geldiği port hariç tüm portlara yayınlar (broadcast).

  • Yani, akıllı bir yönlendirici olan switch, aptal bir çoklayıcı olan Hub gibi davranmaya başlar.

Bu noktada saldırganın amacı gerçekleşmiş olur. Wireshark veya tcpdump gibi bir ağ izleme aracı kullanan saldırgan, normalde kendisine gelmemesi gereken, ağdaki diğer cihazlar arasındaki tüm trafiği (şifresiz parolalar, oturum çerezleri, e-postalar) görmeye ve kaydetmeye başlar.

4. Savunma ve Sıkılaştırma (Blue Team Yaklaşımı)

Bir ağ yöneticisinin bu tür saldırılara karşı alabileceği temel önlemler şunlardır:

  • Port Security (Port Güvenliği): Switch arayüzünde yapılandırılabilecek en etkili yöntemdir. Bir porta bağlanabilecek maksimum MAC adresi sayısı sınırlandırılır (örneğin, 1 veya 2). Bu sınır aşıldığında port otomatik olarak kapatılabilir (err-disable durumu) veya yeni MAC adresleri reddedilerek trafik düşürülebilir.

  • 802.1x Kimlik Doğrulaması: Ağ portuna bağlanan cihazların bir RADIUS sunucusu üzerinden kimlik doğrulaması yapmasını zorunlu kılar.

  • Dynamic ARP Inspection (DAI) ve IP Source Guard: Sahte MAC ve IP adreslemelerini önlemek için DHCP Snooping veritabanını kullanarak ağ trafiğini doğrular.


Laboratuvar ortamındaki Red Team / Blue Team tatbikatlarında, öğrencilerin Layer 2 zafiyetlerini uygulamalı olarak test edebilmesi ve savunma mekanizmalarını geliştirebilmesi için Kali Linux üzerinde macof aracı oldukça pratik ve etkili bir seçenektir.

macof, ağ anahtarının (switch) CAM tablosunu saniyeler içinde doldurmak üzere tasarlanmış, dsniff araç setinin bir parçası olan küçük bir C programıdır. Rastgele MAC adresleri üreterek yerel ağa (LAN) yoğun miktarda paket basar.

1. Kurulum ve Hazırlık

Kali Linux'un güncel sürümlerinde macof genellikle yüklü gelir. Ancak yüklü değilse, dsniff paketini kurarak elde edebilirsiniz:

Bash:
sudo apt update
sudo apt install dsniff

2. Temel Kullanım Parametreleri

Araç oldukça basittir ve genellikle çok fazla parametre gerektirmeden çalıştırılır. Temel sözdizimi şöyledir:

Bash:
macof [-i arayüz] [-s kaynak_IP] [-d hedef_IP] [-e hedef_MAC] [-x kaynak_port] [-y hedef_port]
  • -i (Interface): Saldırının yapılacağı ağ arayüzünü (örneğin eth0 veya wlan0) belirtir.

  • -s (Source IP): İsteklerin geliyormuş gibi görüneceği kaynak IP adresini belirler (Rastgele bırakılması tavsiye edilir).

  • -d (Destination IP): Paketlerin gönderileceği hedef IP adresini belirler.

  • -e (Target MAC): Hedef MAC adresini belirler.

3. Tatbikat Senaryoları (Red Team Uygulamaları)

Öğrencilerle yapılacak ağ güvenliği simülasyonlarında aşağıdaki komut yapıları kullanılabilir:

A. Doğrudan Ağ Üzerinde Taşkın Yaratmak (En Yaygın Kullanım)

Sadece ağ arayüzünü belirterek, araca tamamen rastgele kaynak/hedef IP ve MAC adresleriyle paket üretme talimatı verilir. Bu komut çalıştırıldığı anda switch'in işlemcisi (CPU) yorulmaya ve CAM tablosu dolmaya başlar.

Bash:
sudo macof -i eth0

(Komut çalıştırıldığında ekranda hızla akan rastgele IP ve MAC adreslerini görebilirsiniz. Durdurmak için CTRL+C kullanılır.)

B. Belirli Bir Hedefe Yönelik Taşkın (Kontrollü Test)

Eğer laboratuvardaki belirli bir hedef cihazın (örneğin bir sunucu veya router) davranışını veya loglarını izlemek istiyorsanız, trafiği sadece o hedefe yönlendirebilirsiniz.

Bash:
sudo macof -i eth0 -d 192.168.1.100

4. Tespit ve Analiz (Blue Team Görevleri)

Büyük final simülasyonlarında savunma tarafındaki (Blue Team) öğrencilerin bu saldırıyı tespit edebilmesi için izleyebilecekleri adımlar şunlardır:

  • Ağ Trafiği Analizi (Wireshark): Ağda bir anda binlerce farklı MAC adresinden gelen, genellikle anlamsız TCP SYN veya ARP paketleri görülür. Öğrenciler eth.src veya ARP filtreleri kullanarak bu anormalliği yakalayabilir.

  • Switch Log Analizi: Ağ cihazı (eğer yönetilebilir bir switch ise) loglarında arka arkaya "MAC address flapping" veya "CAM table full" uyarıları üretir. CPU kullanımının aniden %100'e yaklaşması da önemli bir göstergedir.

  • Performans Düşüşü: Ağdaki meşru cihazların bağlantı hızlarında ciddi bir yavaşlama ve paket kayıpları (packet loss) gözlemlenir.

Bu aracı çalıştırırken saniyeler içinde milyonlarca paket üretilebileceğinden, testlerin tamamen izole edilmiş, okulun veya kurumun ana ağına bağlı olmayan fiziksel veya sanal laboratuvar anahtarları (switch) üzerinde yapılması kritik önem taşır.



MAC Flooding Simülasyonu
CAM Tablosu:
0%
Normal (Switch Modu)
0
Saldırgan (Kali)
Ağ Anahtarı (Switch)
Hedef (Kullanıcı)
Sunucu (Kurumsal)
Meşru Trafik (Unicast)
Sahte MAC Paketleri (Flood)
Yayılan Trafik (Broadcast)

Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu