Layer 2 Attacks and Solutions in Switch-Based Networks
Ağ güvenliği, özellikle de switch tabanlı LAN yapılarında en kritik konulardan biridir. Katman 2’de (Data Link Layer) gerçekleşen…
Layer 2 Attacks and Solutions in Switch-Based Networks

Ağ güvenliği, özellikle de switch tabanlı LAN yapılarında en kritik konulardan biridir. Katman 2’de (Data Link Layer) gerçekleşen saldırılar, ağın sürekliliğini ve güvenliğini doğrudan tehdit eder. Bu yazıda, Layer 2 saldırı türlerini, nasıl çalıştıklarını ve hangi önlemlerle engellenebileceklerini ele alacağız.
1. MAC Adresi Tabanlı Saldırılar (MAC Flooding / MAC Table Attack)
Switch’ler, öğrenilen MAC adreslerini bir tabloda tutar. Saldırgan, sahte MAC adresleriyle bu tabloyu doldurur. Switch tablosu taşınca, cihaz tüm trafiği portlara “broadcast” eder. Bu durum, saldırganın ağdaki trafiği dinlemesine olanak tanır.
Çözüm:
- Port Security kullanarak bir porta tanımlanabilecek maksimum MAC sayısını sınırlayın.
- Gereksiz portları kapatın veya güvenli modda bırakın.
2. VLAN Atlama (VLAN Hopping)

Saldırgan, trunk bağlantılarını veya DTP (Dynamic Trunking Protocol) açıklarını kullanarak farklı VLAN’lara sızabilir.
Çözüm:
- DTP’yi manuel kapatın.
- Sadece gerekli portları trunk yapın.
- Native VLAN’i değiştirin ve yönetim VLAN’ını ayırın.
3. VLAN Çift Etiketleme (Double Tagging Attack)

Bu saldırıda, saldırgan bir pakete iki VLAN etiketi ekler. İlk etiket switch tarafından kaldırılır, ikinci etiket ise başka bir VLAN’a geçişe yol açar.
Çözüm:
- Native VLAN’i daima güvenli bir VLAN olarak ayarlayın.
- Trunk portlarda yalnızca gerekli VLAN’ları izinli bırakın.
4. DHCP Saldırıları

- DHCP Starvation Attack: Saldırgan sahte DHCP Discover paketleri göndererek tüm IP havuzunu tüketir.
- DHCP Spoofing: Saldırgan sahte DHCP sunucusu gibi davranarak, istemcilere yanlış IP, gateway veya DNS bilgisi gönderir.
Çözüm:
- DHCP Snooping özelliğini aktif edin.
- Sadece güvenilir portlardan DHCP yanıtlarına izin verin.
5. ARP Saldırıları (ARP Poisoning / Spoofing)
Saldırgan, sahte ARP cevapları göndererek kendi cihazını ağ geçidi gibi gösterir. Böylece “Man-in-the-Middle” saldırısı gerçekleşir.
Çözüm:
- Dynamic ARP Inspection (DAI) etkinleştirin.
- IP Source Guard (IPSG) kullanarak IP-MAC eşleşmelerini doğrulayın.
- DHCP Snooping globalde etkinleştirilir ve hangi VLAN’larda çalışacağı belirtilir. Switch, DHCP Discover/Request/Offer/ACK gibi DHCP mesajlarını gözlemler.
- Trusted portlar (ör. uplink, server portu) işaretlenir; bu portlardan gerçek DHCP sunucularla konuşulmasına izin verilir. Diğer (access) portlar untrusted kalır: bu portlardan DHCP offer ya da ack gelirse reddedilir. Böylece ağdaki rogue DHCP sunucuları etkisiz olur.
- DHCP sürecinin sonucunda switch bir binding table oluşturur: her kayıtta
MAC — IP — VLAN — interface (ve lease bilgisi)bulunur. Bu tablo güvenlik için altın kaynaktır. - DAI (Dynamic ARP Inspection) etkinleştirildiğinde switch, gelen ARP paketlerini kontrol eder: bir host ARP reply (veya request) gönderdiğinde switch, paketteki gönderen MAC ve IP eşleşmesini DHCP Snooping binding tablosuyla karşılaştırır. Eğer uyuşmuyorsa paket düşürülür. Böylece ARP spoofing engellenir.
- Port-Security ayrıca access porttaki MAC sayısını/kimliğini kısıtlayarak, kötü niyetli cihazın (veya çok sayıda sahte MAC üreten saldırının) çalışmasını zorlaştırır.
- IP Source Guard untrusted portlardan gelen IP trafiklerinde kaynak IP kontrolü yapar — eğer paket, binding tablosunda o portla eşleşmiyorsa paket drop edilir. Bu IP spoofing korumasıdır.
Kısacası: DHCP Snooping = kaynak veritabanı oluşturur; DAI ve ISG = bu veritabanını kullanarak ARP ve IP seviyesinde doğrulama yapar; Port-Security = fiziksel/MAC seviyesinde sınır koyar.
6. Adres Sahteciliği (Address Spoofing)
Saldırgan, sahte MAC veya IP adresleriyle ağ trafiğini manipüle eder.
Çözüm:
- ACL (Access Control List) ile IP/MAC kısıtlamaları uygulayın.
- Port Security ile yetkisiz cihazların bağlantısını engelleyin.
7. STP (Spanning Tree Protocol) Saldırıları
Saldırgan, sahte BPDU paketleri göndererek kendisini Root Bridge olarak atayabilir. Bu da tüm ağın yönlendirilmesini bozabilir.
Çözüm:
- BPDU Guard ve Root Guard aktif edin.
- PortFast yapılandırmasını sadece uç cihazlarda kullanın.
8. CDP (Cisco Discovery Protocol) Saldırıları
CDP, cihazların birbirini tanıması için kullanılan Layer 2 protokolüdür. Ancak saldırganlar bu protokol üzerinden switch veya router hakkında detaylı bilgi toplayabilir.
Çözüm:
- Gerekli değilse CDP’yi kapatın.
- Kritik portlarda CDP kullanımını sınırlandırın.
Port Security (Port Güvenliği)
Switch’ler varsayılan hâlde tüm erişim portlarını açık getirir. Bu, kurulum kolaylığı sağlasa da yetkisiz cihazların ağa takılabilmesi ve MAC tablosu saldırıları gibi L2 tehditleri için yüzey alanı oluşturur. Port Security, erişim portuna bağlanabilecek cihaz(lar)ın MAC adresi sayısını ve kimliğini sınırlandırarak L2 katmanını sertleştirmenin en etkili yoludur.
0.1 Kullanılmayan portları kapat
conf t
! (İsteğe bağlı izolasyon VLAN’ı)
vlan 999
name BLACKHOLE
interface range fastEthernet 0/1 - 0/10 ! örnek aralık
description UNUSED
switchport mode access
switchport access vlan 999
shutdown
end
wr
Neden? Boş portlar açık kalırsa herkes kablo takıp ağa girebilir.
0.2 DTP ve istenmeyen trunk’ları engelle
Erişim (uç) portlarında trunk istemiyoruz:
interface range fastEthernet 0/11 - 0/24
switchport mode access ! DTP’yi fiilen devre dışı bırakır
spanning-tree portfast
spanning-tree bpduguard enable
DTP açık kalırsa saldırgan VLAN atlama senaryolarını tetikleyebilir.
Port Security’ye Giriş: Temel Mantık
- Ne yapar? Porta izin verilen güvenli MAC adres(ler)inin sayısını/kimliğini sınırlar.
- Çalışma alanı: En doğru kullanım erişim (access) portlarıdır. (Bazı platformlar trunk üzerinde de destekler; erişim portu önerilir.)
- Ön koşul: Arayüz access modda olmalı; aksi hâlde komut reddedilir.
2) Hızlı Başlangıç: En Sık Kullanılan Konfig
2.1 Tek cihaz, tek MAC (en sık)
conf t
interface f0/18
description USER-PC
switchport mode access
switchport access vlan 10
switchport port-security
switchport port-security maximum 1
switchport port-security mac-address sticky
switchport port-security violation shutdown
spanning-tree portfast
spanning-tree bpduguard enable
end
wr
- maximum 1: Sadece tek MAC.
- sticky: O anda bağlı cihazın MAC’i otomatik “öğrenilir” ve running-config’e yazılır (save edersen kalıcı olur).
- violation shutdown: Farklı MAC gelirse port err-disabled olur (kapalı).
2.2 IP telefon + PC olan masalar (2 MAC)
interface f0/19
description PHONE+PC
switchport mode access
switchport access vlan 10
switchport voice vlan 20
switchport port-security
switchport port-security maximum 2
switchport port-security mac-address sticky
switchport port-security violation restrict
spanning-tree portfast
spanning-tree bpduguard enable
Bazı IP telefonlar “telefon + PC” için 2 MAC kullanır; nadiren 3 olabilir (yapına göre 2/3 seç).
3) Port Security Parametreleri (Derinlemesine)
3.1 Maksimum MAC sayısı
switchport port-security maximum <1-192> ! platforma göre üst sınır değişebilir
Standart uç portlarda 1 (veya telefon varsa 2) iyi pratiktir.
3.2 MAC öğrenme yöntemleri
Static (elle):
switchport port-security mac-address 0011.2233.4455
- Dynamic (geçici): Port security açıkken switch doğal akışta MAC’i öğrenir; yeniden başlatınca silinir.
- Sticky (önerilen):
switchport port-security mac-address sticky
! (İstersen doğrudan MAC'i sticky olarak da yazabilirsin)
! switchport port-security mac-address sticky 0011.2233.4455
Sticky öğrenilen MAC, running-config’e yazılır. wr (copy run start) yaparsan kalıcı olur.
3.3 İhlal (violation) modları
- shutdown (varsayılan öneri): Farklı MAC görürse port err-disabled olur, trafik kesilir, syslog üretir.
- restrict: Yetkisiz çerçeveler drop, syslog + sayaç artar, port açık kalır.
- protect (en zayıf): Yetkisiz çerçeveler drop, log üretmez, sayaç artmaz. Önerilmez.
switchport port-security violation {shutdown | restrict | protect}
3.4 Yaşlandırma (aging)
- Amaç: Güvenli MAC’leri belirli süre sonra otomatik temizlemek.
switchport port-security aging time 10 ! dakika
switchport port-security aging type {absolute | inactivity}
! (İsteğe bağlı) statik adresler için aging:
switchport port-security aging static
- absolute: Süre dolunca siler.
- inactivity: Süre boyunca trafik yoksa siler.
- Not: Bazı platformlarda aging seçenekleri sınırlı olabilir
3.5 Err-disable kurtarma (opsiyonel)
Port shutdown ile kapanırsa, merkezî yönetimsiz sahalarda otomatik kalksın istersen:
errdisable recovery cause psecure-violation
errdisable recovery interval 300 ! saniye (varsayılan 300)
Dikkat: Otomatik açılma, saldırı devam ediyorsa tekrar kapanma döngüsü yaratabilir. Genelde merkezî izleme varsa mantıklı.
4) Doğrulama ve İzleme Komutları
show port-security interface f0/18
! Durum, maximum, violation modu, sticky/dynamic/statik MAC sayısı
show port-security address
! Tüm portlardaki güvenli MAC adresleri ve öğrenme türleri (secureSticky/secureDynamic)
show interfaces status err-disabled
! Hangi portlar err-disabled?
show errdisable recovery
! Otomatik kurtarma ayarları
show run | section interface f0/18
! Sticky MAC’ler running-config’e yazıldı mı?
5) Sık Yapılan Hatalar ve Çözümleri
Hata: Command rejected: Interface is in dynamic mode
Sebep: Arayüz access değil (DTP/dynamic auto).
Çözüm:
switchport mode access
switchport port-security
Hata: IP telefon + PC masasında port sürekli ihlal görüyor
Sebep: maximum 1 bırakıldı.
Çözüm: switchport port-security maximum 2 (+ sticky) kullan.
Hata: Cihaz değişti, eski sticky MAC kaldı Çözüm:
clear port-security sticky interface f0/18
! veya tek tek:
no switchport port-security mac-address sticky 0011.2233.4455
Hata: Port err-disabled oldu, açılmıyor Çözüm:
interface f0/18
shutdown
no shutdown
! veya otomatik kurtarma etkinleştir (isteğe bağlı):
errdisable recovery cause psecure-violation
Hata: Sticky öğrenildi ama reboot sonrası yok
Sebep: Kaydedilmedi.
Çözüm: wr (veya copy run start) ile kaydet.
6) Örnek Senaryolar
6.1 Tek kullanıcı portu (en sık)
interface f0/10
description HR-Desktop
switchport mode access
switchport access vlan 30
switchport port-security
switchport port-security maximum 1
switchport port-security mac-address sticky
switchport port-security violation shutdown
spanning-tree portfast
spanning-tree bpduguard enable
6.2 IP telefon + PC
interface f0/11
description Reception-Phone+PC
switchport mode access
switchport access vlan 30
switchport voice vlan 20
switchport port-security
switchport port-security maximum 2
switchport port-security mac-address sticky
switchport port-security violation restrict
spanning-tree portfast
spanning-tree bpduguard enable
Beklenen: İki MAC’e kadar izin; üçüncü MAC drop + log.
6.3 MAC’leri elle (statik) kilitleme
interface f0/12
description Finance-Desktop
switchport mode access
switchport access vlan 40
switchport port-security
switchport port-security maximum 1
switchport port-security mac-address 1a2b.3c4d.5e6f
switchport port-security violation shutdown
Beklenen: Yalnızca bu MAC çalışır.
Port Security, L2 yüzeyini daraltmanın en etkili yollarından biridir. Doğru ön sertleştirme (boş portları kapatma, DTP’yi devre dışı bırakma, BPDU Guard) ile birleştiğinde; MAC flood, yetkisiz cihaz takma, pivot ve sniffing risklerini dramatik biçimde azaltır. Teşekkürler…
메타데이터
- post_id
- 7b09d55b84fb
- slug
- layer-2-attacks-and-solutions-in-switch-based-networks-7b09d55b84fb
- url
- https://medium.com/@koseogluihsanahmet/layer-2-attacks-and-solutions-in-switch-based-networks-7b09d55b84fb
- canonical_url
- https://medium.com/@koseogluihsanahmet/layer-2-attacks-and-solutions-in-switch-based-networks-7b09d55b84fb
- author_url
- https://medium.com/@koseogluihsanahmet
- status
- ok
- fetched_at
- 2026-07-17 14:47:18