Hikayeler

Reklam vermek için turkmmo@gmail.com

Dinamik ARP Denetimi (DAI)

Nizam-ı Alem

Malato psichico
Telefon Numarası Onaylanmış Üye Turkmmo Discord Nitro Booster
Yönetici
Dergi Editörü
Turnuva
Admin
Yarışma
Gümüş Üye
VIP Üye
Paylaşım
Ayın Üyesi
Altın Üye
Katılım
15 May 2013
Konular
971
Mesajlar
6,650
Online süresi
2ay 11g
Reaksiyon Skoru
5,347
Altın Konu
314
Başarım Puanı
319
TM Yaşı
12 Yıl 11 Ay 12 Gün
MmoLira
22,209
DevLira
15

Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!

Bu konumda sizlere , Dinamik ARP Denetimi'ne (DAI) neden ihtiyaç duyduğumuzu, ne olduğunu, nasıl çalıştığını ve Cisco anahtarlarında nasıl yapılandırılıp doğrulanacağını açıklamaya çalışacağım arkadaşlar.

Neden DAI'ye ihtiyacımız var?


DAI'ye dalmadan önce, öncelikle güvenlik açısından Adres Çözümleme Protokolü'nün (ARP) temellerini inceleyelim. Bu, dersin bağlamını oluşturacaktır.

ARP nedir?


ARP, Ethernet ağlarında temel bir protokoldür ve her ağ mühendisinin nasıl çalıştığını bilmesi gerekir. Protokolü anlamakta kendinizi güvende hissetmiyorsanız, "ARP nedir?" dersimize göz atın.

Kısacası, ARP, aşağıdaki şemada gösterildiği gibi, bir ağ katmanı adresini (IPv4 adresi) bir veri bağlantı katmanı donanım adresine (MAC adresi) eşler.

1775675136391.png


Örnekte, bir kullanıcı komut isteminde gösterilen komutu yazarak PC1'e PC2'ye ping atmasını emretmiştir. İki temel noktaya dikkat edin:

Kullanıcı, CLI komutu ping 10.1.1.2 aracılığıyla PC1'e PC2'nin ağ katmanı adresini (IPv4) sağlar. Bu nedenle, PC1 bir çerçeveyi kapsüllediğinde, ICMP ve hedef IP adresi olarak 10.1.1.2 kullanması gerektiğini bilir.
Ancak, ne kullanıcı ne de PC1, PC2'nin veri bağlantı katmanı adresini (MAC) bilmez. Bu nedenle, PC1 çerçevedeki hedef MAC adreslerini dolduramaz. PC1, 10.1.1.2'ye karşılık gelen MAC adresini nasıl bulur?

İşte burada ARP devreye giriyor. PC1, yukarıdaki şemada gösterildiği gibi "10.1.1.2'ye kim sahip?" isteğini göndermek için ARP kullanır. İstek bir yayın isteğidir ve yerel ağdaki tüm cihazlara gönderilir. PC2, ARP isteğini aldığında, aşağıdaki şemada gösterildiği gibi "Benim MAC adresim şu" şeklinde yanıt verir.

1775675233262.png


Sonuç olarak, PC1 yanıtı kabul eder ve ARP önbelleğini günceller. Ardından ICMP çerçevesini kapsüller ve kullanıcının talimat verdiği ping komutunu çalıştırarak PC2'ye gönderir. ARP, genel olarak bu şekilde çalışır.

ARP'nin şu yönüne dikkat edin: Çok eski bir protokoldür. 1982 yılında RFC 826'nın bir parçası olarak ortaya çıktı. Ağ güvenliğinin öncelikli odak noktası olmadığı zamanlarda geliştirildi. 1980'lerde siber güvenlik diye bir şey yoktu. Bu nedenle ARP protokolü düz metindir ve herhangi bir güvenlik önlemi içermez.

Bir ana bilgisayar "10.1.1.2'ye kim sahip?" diye yayın yapar ve herhangi bir cihaz yanıt verebilir. Ana bilgisayar herhangi bir yanıtı kabul eder ve ARP önbelleğini günceller. Bir ARP yanıtının meşru olup olmadığını doğrulamaz. Bunu yapacak yerleşik bir mekanizma yoktur.

ARP Zehirlenmesi Nedir?


Saldırganlar, ARP'nin yerleşik bir güvenlik mekanizmasına sahip olmamasından ARP zehirlenmesi adı verilen bir teknik kullanarak kolayca faydalanabilirler. İşte nasıl çalıştığı:

1.gif


PC1, varsayılan ağ geçidinin MAC adresini (10.1.1.254) arayan bir ARP İsteği yayınlar. ARP İsteği yerel ağdaki herkese gider.
Aynı VLAN'daki bir saldırgan, varsayılan ağ geçidinin IP adresini saldırganın MAC adresine eşleyen sahte ARP yanıtları gönderir.
PC1, ARP önbelleğini günceller ve ağ geçidi olduğunu düşünerek saldırgana trafik göndermeye başlar.

Saldırgan, veri yakalayabilir, ortadaki adam saldırıları gerçekleştirebilir veya hizmet reddi saldırısına neden olmak için trafiği düşürebilir.
Bunların hiçbiri derin siber güvenlik becerileri gerektirmez; sadece doğru araç ve Katman 2 erişimi yeterlidir. ACL'ler ve güvenlik duvarları gibi geleneksel Katman 3 güvenlik özellikleri bunu durduramaz çünkü saldırı yönlendirmeden önce, yerel ağ içinde gerçekleşir. Sonuç olarak, PC1'in İnternet'e yönelik trafiği, aşağıdaki şemada gösterildiği gibi saldırgana gider.

2.gif


Dinamik ARP Denetimi (DAI), erişim noktasında bu sahte ARP mesajlarını durdurmak için özel olarak tasarlanmıştır.

Dinamik ARP Denetimi (DAI) nedir?


DAI, anahtarlarda ARP paketlerini inceleyen ve yalnızca "geçerli" ARP yanıtlarına izin veren bir Katman 2 güvenlik özelliğidir. Geçerli, IP-MAC eşleştirmesinin anahtarın doğru olduğuna inandığı şeyle eşleşmesi anlamına gelir. Peki anahtar gerçeği nereden öğreniyor?

DAI, DHCP gözetleme ile birlikte çalışır. Örneğin, aşağıdaki şemaya bakalım. DHCP sunucusu, 10.1.1.0/24 ağındaki ana bilgisayarlara IP adresleri atar. SW1 anahtarında DHCP gözetleme etkinleştirilmiştir, bu nedenle DHCP mesajlarını izler ve hangi ana bilgisayarların hangi portta hangi IP adreslerini aldığını kaydeden kendi tablosunu oluşturur. Bu, DAI'nin kullandığı gerçeğin kaynağıdır.

1775675328627.png


DHCP gözetleme tablosuna sahip olan switch, bir ARP yanıtının DHCP tarafından o IP adresinin atanmış olduğu bir porta gelip gelmediğini kontrol edebilir. Örneğin, daha önce gördüğümüz aynı ARP zehirlenmesi örneğine geri dönelim.

PC1, "10.1.1.2'ye kim sahip?" diye sorar. Saldırgan, "Ben, 10.1.1.2 EEE'de." diye yanıt verir. Ancak SW1, DHCP gözetleme tablosuna göre 10.1.1.2'nin Gi1/0/5'e bağlı olduğunu ve MAC adresinin BBB olduğunu kontrol eder. Bu nedenle SW1, Gi1/0/3'teki ARP yanıtının sahte olduğunu bilir ve aşağıdaki şemada gösterildiği gibi onu reddeder.

1775675405265.png




Ek olarak, DAI güvenilir ve güvenilmez port kavramını uygular. Ağ yöneticileri bir portu manuel olarak güvenilir olarak yapılandırabilir; bu, o porttaki herhangi bir ARP yanıtının otomatik olarak kabul edileceği anlamına gelir. Bunlar genellikle DHCP tarafından da güvenilir olarak yapılandırılmış portlardır. DAI'nin DHCP snooping ile birlikte çalıştığını görebilirsiniz. Onsuz çalışamaz.

DAI nasıl çalışır?


Özelliğin en temel kısmıyla başlayalım:

DAI, DHCP Snooping'e dayanır.

DHCP Snooping, DHCP'ye dayanır.

Bu nedenle, Dinamik ARP denetiminin yalnızca IP adreslerinin DHCP kullanılarak dinamik olarak atandığı ve DHCP snooping'in etkinleştirildiği ortamlarda anlamlı olduğunu anlamak önemlidir; bu durum aşağıdaki bağımlılık grafiğinde gösterilmiştir.

1775675440396.png


Bu özellik iki basit adımda çalışır:

Adım 1: Güvenilmeyen portlardan gelen tüm gelen ARP mesajlarını yakalar. Burada şunlara özellikle dikkat edin:
Bu bir gelen güvenlik özelliğidir. Bir switch portunun giden yönünde hiçbir şey yapmaz.
Sadece güvenilmeyen portlardaki paketleri yakalar. Güvenilir portlarda herhangi bir kontrol yapmaz.

Adım 2: Gelen paketin (IP adresi, MAC adresi, arayüz) üçlüsünü DHCP Snooping bağlama tablosunda doğrular.
Eşleşme varsa, paket iletilir. Eşleşme yoksa, paket düşürülür ve switch ihlali kaydeder.
DAI ayrıca bazı ek işler de yapar. Geçersiz ARP uzunlukları, tutarsız adresler veya olağandışı hızlar dahil olmak üzere tutarlılığı kontrol eder. ARP paketlerinin kontrol düzlemini aşırı yüklememesi için DAI'yi port başına ARP hızını sınırlayacak şekilde ayarlayabilirsiniz.

Dinamik ARP Denetimi (DAI) Yapılandırması

Şimdi, Cisco Catalyst anahtarlarında bu özelliği nasıl yapılandıracağımızı ve doğrulayacağımızı görmek için bir yapılandırma örneğine bakalım. Aşağıdaki diyagramda gösterilen topolojiyi kullanacağız.

1775675474516.png


Dikkat ederseniz, tüm cihazlar Cisco IOL imajlarıdır, SW1 ise Catalyst 9000v sanal anahtarıdır. Tüm cihazlar varsayılan yapılandırmalarıyla birlikte gelir. Her şeyi sıfırdan yapılandıracağız.

DHCP Sunucusu

Öncelikle DHCP sunucusunu kuralım. En temel yapılandırmalarla başlıyoruz - şemaya göre arayüzde IP adreslemeyi ayarlıyoruz.

Kod:
DHCP_Server# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
DHCP_Server(config)# interface e0/0
DHCP_Server(config-if)# ip address 10.2.1.1 255.255.255.0
DHCP_Server(config-if)# no shutdown

Ardından DHCP ayarlarını yapılandırıyoruz. Bunun doğrudan VLAN10'a bağlı olmadığını, R1 yönlendiricisinin arkasında olduğunu unutmayın.

Kod:
DHCP_Server(config)# ip dhcp pool DHCP_VLAN10
DHCP_Server(dhcp-config)# network 10.1.1.0 /24
DHCP_Server(dhcp-config)# default-router 10.1.1.254
DHCP_Server(dhcp-config)# dns-server 10.1.1.254
DHCP_Server(config)# ip dhcp excluded-address 10.1.1.254

Son olarak, cihazda IP yönlendirmesini devre dışı bırakarak sunucu/uç cihaz gibi davranmasını sağlıyoruz ve aşağıdaki CLI bloğunda gösterildiği gibi varsayılan bir ağ geçidi yapılandırıyoruz. Artık IOL imajı normal bir DHCP sunucusu gibi davranıyor.

Kod:
DHCP_Server(config)# no ip routing
DHCP_Server(config)# ip default-gateway 10.2.1.254
DHCP_Server#

R1
Şimdi de R1 yönlendiricisini yapılandıralım. Temel olarak sadece arayüzlere IP adreslemesi gerekiyor.

Kod:
R1# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)# interface e0/0
R1(config-if)# ip address 10.1.1.254 255.255.255.0
R1(config-if)# ip helper-address 10.2.1.1
R1(config-if)# no shutdown
R1(config-if)# interface e0/1
R1(config-if)# ip address 10.2.1.254 255.255.255.0
R1(config-if)# no shutdown

DHCP yönlendiricisi doğrudan VLAN 10'a bağlı olmadığı halde bu VLAN'a IP adresleri atayacağı için, LAN arayüzünde bir IP yardımcı adresi yapılandırmamız gerekiyor. Neden?

Bir cihaz (örneğin PC1) bir DHCP Discover gönderdiğinde, bu bir yayın (broadcast) olur; yani yalnızca aynı alt ağdaki (VLAN10) cihazlara ulaşır. Ancak DHCP sunucusu VLAN 10'a bağlı olmadığı için yayın ona asla ulaşmaz.


1775675973062.png


İşte burada ip helper-address 10.2.1.1 devreye giriyor. Yönlendiriciye şunu söylüyor: “Bu arayüzde bir DHCPDiscover görürseniz, onu düşürmeyin — 10.2.1.1 adresine tek yönlü yayın olarak iletin.” Yönlendirici daha sonra DHCP yayınını alır ve doğrudan 10.2.1.1 adresine — DHCP sunucusuna — gönderir.

SW1
Ardından, LAN anahtarını yapılandırıyoruz. Temel katman 2 yapılandırmalarıyla - VLAN'larla - başlıyoruz. VLAN 10'u yapılandırıyoruz ve tüm arayüzleri ona atıyoruz.

Kod:
SW1# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
SW1(config)# vlan 10
SW1(config-vlan)# exit
SW1(config)# interface range GigabitEthernet 1/0/1-5
SW1(config-if-range)# switchport access vlan 10
SW1(config-if-range)# exit

Ardından, bu VLAN için DHCP snooping'i etkinleştiriyoruz ve yönlendiriciye giden bağlantıyı DHCP Snooping güven portu olarak belirliyoruz.

Kod:
SW1(config)# ip dhcp snooping
SW1(config)# ip dhcp snooping vlan 10
SW1(config)# no ip dhcp snooping information option
SW1(config)# interface GigabitEthernet 1/0/4
SW1(config-if)# ip dhcp snooping trust
SW1(config-if)#


Son olarak, Dinamik ARP denetimini etkinleştiriyoruz. Aşağıdaki CLI bloğunda vurgulandığı gibi, temel kurulumun yalnızca iki komuttan oluştuğunu görebilirsiniz.

Kod:
SW1(config)# ip arp inspection vlan 10
SW1(config)# interface GigabitEthernet 1/0/4
SW1(config-if)# ip arp inspection trust
SW1(config-if)# end
SW1#

Şimdi DAI yerel LAN'da çalışır durumda ve anahtar, ana bilgisayarlardan gelen ARP yanıtlarını izler ve bunları DHCP gözetleme tablosuyla karşılaştırır. Şimdi çalışıp çalışmadığını test edelim.

Dinamik ARP Denetiminin (DAI) Doğrulanması

DAI'nin çalıştığını doğrulamak için öncelikle ana bilgisayarı DHCP aracılığıyla adres istemek üzere yapılandıralım ve ardından anahtarın DHCP gözetleme tablosunu kontrol edelim.

Ana Bilgisayarlar

Her ana bilgisayar basitçe bir Cisco IOL görüntüsüdür. Arayüz yapılandırma moduna girmemiz ve aşağıdaki komutu yapılandırmamız gerekiyor.

Kod:
PC1# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
PC1(config)# int e0/0
PC1(config-if)# ip address dhcp
PC1(config-if)# no shutdown
PC1(config-if)# end

Bunu, saldırgan da dahil olmak üzere topolojideki her ana bilgisayar için yapmamız gerekiyor.

Şimdi, anahtarın DHCP gözetleme bağlama tablosunu kontrol edersek, tüm DHCP mesajlarını izlediğini ve her birine atanan IP adreslerini kaydettiğini görebiliriz.

Kod:
SW1# show ip dhcp snooping binding
MacAddress          IpAddress        Lease(sec)  Type           VLAN  Interface
------------------  ---------------  ----------  -------------  ----  --------------------
AA:BB:CC:00:07:00   10.1.1.3         86358       dhcp-snooping   10    GigabitEthernet1/0/3
AA:BB:CC:00:06:00   10.1.1.2         86330       dhcp-snooping   10    GigabitEthernet1/0/2
AA:BB:CC:00:05:00   10.1.1.1         86211       dhcp-snooping   10    GigabitEthernet1/0/1
AA:BB:CC:00:09:00   10.1.1.5         86393       dhcp-snooping   10    GigabitEthernet1/0/5
Total number of bindings: 4

Kod:
Tamam, DHCP hizmetinin çalıştığını ve DHCP Snooping'in de beklendiği gibi çalıştığını doğruladık. Şimdi Dinamik ARP denetimine odaklanalım.

Dinamik ARP Denetimini Doğrulama
Öncelikle, DAI'nin anahtarda etkin olup olmadığını kontrol edelim, ki etkin durumda.

Kod:
SW1# show ip arp inspection vlan 10

Source Mac Validation      : Disabled
Destination Mac Validation : Disabled
IP Address Validation      : Disabled

 Vlan     Configuration    Operation   ACL Match          Static ACL
 ----     -------------    ---------   ---------          ----------
   10     Enabled          Active                         

 Vlan     ACL Logging      DHCP Logging      Probe Logging
 ----     -----------      ------------      -------------
   10     Deny             Deny              Off

Şimdi, saldırganın PC2'nin IP adresi için sahte bir ARP yanıtı göndermesi durumunda ne olacağını test edelim. Bunu nasıl yapabiliriz? PC2'nin IP adresi olan 10.1.1.2'yi saldırganın arayüzüne statik olarak yapılandırabiliriz. Bu, düğümün 10.1.1.2 için gelen ARP isteklerine kendi MAC adresiyle yanıt vermesine neden olacaktır.

Kod:
Atacker# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Atacker(config)# interface e0/0
Atacker(config-if)# ip address 10.1.1.2 255.255.255.0
Atacker(config-if)# end
Atacker#

Anahtarda hemen neler olduğunu gözlemleyin. Saldırgan tarafından geçersiz bir ARP yanıtı gönderildiğini anında tespit eder.

Kod:
SW1#
*Nov  6 20:26:59.763: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Req) on Gi1/0/3, vlan 10.([aabb.cc00.0700/10.1.1.2/aabb.cc00.0400/10.1.1.254/20:26:58 UTC Thu Nov 6 2025])
*Nov  6 20:26:59.763: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Gi1/0/3, vlan 10.([aabb.cc00.0700/10.1.1.2/ffff.ffff.ffff/10.1.1.2/20:26:58 UTC Thu Nov 6 2025])

Anahtarın DAI'si (DHCP gözetleme tablosuna göre) anında Gi1/0/3 portunun DHCP üzerinden 10.1.1.2 IP adresini almadığını ve bu nedenle bu IP için ARP Yanıtları göndermesine izin verilmediğini belirledi.

Dinamik ARP denetim istatistiklerini kontrol edersek, aşağıdaki CLI bloğunda gösterildiği gibi artık "Düşmeler" kaydedildiğini görebiliriz.

Kod:
SW1# show ip arp inspection statistics

 Vlan      Forwarded        Dropped     DHCP Drops      ACL Drops
 ----      ---------        -------     ----------      ---------
   10             16              3              3              0

 Vlan   DHCP Permits    ACL Permits  Probe Permits   Source MAC Failures
 ----   ------------    -----------  -------------   -------------------
   10             16              0              0                     0

 Vlan   Dest MAC Failures   IP Validation Failures   Invalid Protocol Data
 ----   -----------------   ----------------------   ---------------------
   10                   0                        0                       0

İşte DAI'nin en temel çalışma prensibi bu. Son olarak, aklınıza takılan bazı özel durumları ele alalım.

Statik IP'ler ve DAI

DAI'nin, ARP paketlerinin geçerli olup olmadığını doğrulamak için DHCP snooping veritabanını kullandığını gördük. Bu, dinamik olarak atanmış IP'lere (DHCP'den) sahip ana bilgisayarlar için harika çalışır, çünkü anahtar zaten hangi IP'nin hangi MAC adresine ait olduğunu bilir. Ama… bir cihazın statik bir IP'si olduğunda ne olur? Statik bir yapılandırma PC3'e 10.1.1.3 IP adresini atarsa ne olur?

DHCP alışverişi yok - dolayısıyla DHCP snooping veritabanında hiçbir giriş yok. Bu, DAI'nin ARP paketlerini doğrulayacak hiçbir şeyi olmadığı ve varsayılan olarak bunları düşüreceği anlamına gelir.

Bunu düzeltmek için iki seçenek vardır:

Statik bir ARP ACL (Erişim Kontrol Listesi) oluşturun - Hangi IP-MAC çiftlerinin geçerli olduğunu manuel olarak tanımlarsınız. Bu şekilde, DAI statik olarak yapılandırılmış ana bilgisayarlar için ARP paketlerini yine de doğrulayabilir.

Kod:
arp access-list STATIC-HOSTS
permit ip host 10.1.1.50 mac host 00a1.b2c3.d4e5
!
ip arp inspection filter STATIC-HOSTS vlan 10

Arayüzü güvenilir olarak yapılandırın - Statik ana bilgisayar güvenli bir yerde (sunucu veya başka bir anahtar gibi) bulunuyorsa, o bağlantı noktasında denetimi atlayabilirsiniz:

Kod:
interface GigabitEthernet1/0/3
 ip arp inspection trust

Önemli Noktalar

ARP, tasarım gereği güvensizdir. Herhangi bir ARP yanıtını doğrulama yapmadan kabul eder ve bu da onu sahtekarlık ve ortadaki adam saldırılarına karşı savunmasız hale getirir.
ARP zehirlenmesi, IP-MAC eşleştirmelerini taklit ederek bir ana bilgisayarı saldırgana trafik göndermeye kandırır.
DAI, ARP paketlerini Katman 2'de inceleyerek ve doğrulayarak ARP sahtekarlığına karşı koruma sağlar.
DAI, DHCP Snooping'e bağlıdır. Anahtar, geçerli IP-MAC-port eşleştirmeleri için "doğruluk kaynağı" olarak DHCP Snooping bağlama tablosunu kullanır.
Güvenilmeyen portlar kontrol edilir; güvenilir portlar doğrulamayı atlar (genellikle yukarı bağlantılar veya trunk portları).
Bir ARP paketinin IP-MAC-port ikilisi DHCP Snooping tablosuyla eşleşmiyorsa, anahtar paketi düşürür ve ihlali kaydeder.
DAI, geçersiz MAC veya IP alanları için ek kontroller yapabilir ve DoS saldırılarını önlemek için ARP paketlerinin hızını sınırlayabilir.
Statik IP'li sunucular DHCP Snooping tablosunda yer almaz. Bunları desteklemek için iki seçenek vardır:
Statik ARP ACL'leri (geçerli IP-MAC çiftlerini manuel olarak tanımlayın) veya
Güvenilir arayüzler (güvenli portlarda denetimi atlayın).

Yapılandırma esasları:
DHCP Snooping'i etkinleştirin ve uplink portuna güvenin.
VLAN'larda DAI'yi etkinleştirin ve gerektiğinde ARP denetimi güvenini ayarlayın.

Doğrulama komutları:
show ip dhcp snooping binding
show ip arp inspection vlan <vlan-id>
show ip arp inspection statistics​
 
Eline sağlık
 

Şu an konuyu görüntüleyenler (Toplam : 1, Üye: 0, Misafir: 1)

Geri
Üst