OSPF Düz Metin Kimlik Doğrulaması

Nizam-ı Alem

Malato psichico
Altın Üye
Katılım
15 May 2013
Konular
972
Mesajlar
6,651
Online süresi
2ay 11g
Reaksiyon Skoru
5,350
Altın Konu
314
Başarım Puanı
319
TM Yaşı
12 Yıl 11 Ay 12 Gün
MmoLira
22,215
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!

Günümüzde güvenlik, her büyük kuruluşun en önemli önceliğidir. Bu bağlamda, OSPF kimlik doğrulaması, özellikle ağ bütünlüğü ve veri gizliliğinin esas olduğu ortamlarda çeşitli güvenlik avantajları sağlar.

OSPFv2, üç farklı kimlik doğrulama türünü destekler: Yok (Tip 0), Düz Metin (Tip 1) ve MD5 (Tip 2). Ek olarak, Cisco en yeni yazılım sürümlerinde daha gelişmiş kriptografik kimlik doğrulama (HMAC-SHA) sunmuştur.

Bu laboratuvarda kullanılan EVE-NG dosyasını dersin sonunda indirerek konuyu kendiniz uygulayabilirsiniz.

Neden OSPF Kimlik Doğrulamasına İhtiyacımız Var?


Varsayılan olarak, tüm OSPF etkin arayüzler kimlik doğrulama türü 0'a (Yok) ayarlanmıştır, yani hiç kimlik doğrulama yoktur. Güvenlik açısından bu, varsayılan ayarlarla, kötü niyetli bir cihazın OSPF yönlendirme alanınıza katılmasını ve aşağıdaki şemada gösterildiği gibi yanlış yönlendirme bilgileri enjekte etmesini hiçbir şeyin engellemediği anlamına gelir.



Kimlik doğrulaması yapılmamış bir OSPF ağı, aşağıdakiler gibi çeşitli yönlendirme saldırılarına karşı savunmasızdır:

Yönlendirme Enjeksiyonu: Kontrol düzleminde, kötü niyetli bir cihaz, daha iyi maliyet veya daha kısa maskelerle sahte yönlendirmeler ekleyerek trafiğin yanlış yönlendirilmesine veya hizmetin tamamen reddedilmesine neden olabilir.

Ortadaki Adam (MiM): Veri düzleminde, bu durum aşağıdaki şemada gösterildiği gibi kurumsal trafiğin ele geçirilmesine ve izlenmesine yol açar.

Hizmet Reddi (DoS): Kötü niyetli cihaz ayrıca, ağdaki diğer tüm cihazları aşırı yükleyerek, aşırı sayıda LSA ile ağı doldurabilir.



OSPF kimlik doğrulaması, yalnızca yetkili yönlendiricilerin komşu olmasını ve yönlendirme bilgilerini değiş tokuş etmesini sağlar. Bu, yetkisiz cihazların OSPF ağınıza katılmasını ve ağ kesintilerine neden olabilecek yanlış yönlendirmeler göndermesini önler.

OSPF kimlik doğrulamasının ağ üzerinden akan trafiği korumadığını anlamak önemlidir. Yalnızca yönlendiricilerin değiş tokuş ettiği yönlendirme bilgilerinin bütünlüğünü korur.

Düz Metin Kimlik Doğrulaması nasıl çalışır?


Protokolün desteklediği en temel kimlik doğrulama biçimi olan Düz Metin Kimlik Doğrulaması ile başlayalım.

Aşağıdaki şemada gösterildiği gibi, yönlendiricileri kötü niyetli cihazlardan gelen OSPF mesajlarını kabul etmekten koruyan en temel OSPF güvenlik mekanizmasıdır.



Aynı veri bağlantısındaki yönlendiriciler, o bağlantı üzerinden aynı kimlik doğrulama türünü ve parolayı kullanmalıdır; aksi takdirde komşuluk ilişkileri kuramazlar.

Düz Metin Kimlik Doğrulaması, parolanın OSPF mesajları üzerinden açık metin olarak gönderilmesi anlamına gelir. Bu, en temel güvenlik biçimidir çünkü paketlere erişimi olan herkes parolayı görebilir. Bununla birlikte, hiç parola olmamasından açıkça daha güvenlidir.

Düz Metin Kimlik Doğrulaması nasıl çalışır?


OSPF kimlik doğrulaması arayüz başına etkinleştirilir. Etkinleştirildiğinde, yönlendirici o arayüzde aldığı her yönlendirme güncelleme paketinin kimlik doğrulama anahtarını doğrular. Bağlantıdaki her komşu aynı kimlik doğrulama anahtarını paylaşmalıdır. Anahtar genellikle "parola" olarak adlandırılır ve yapılandırma sırasında her arayüzde ayarlanır. Aşağıdaki şemada gösterildiği gibi, bir yönlendiricide farklı kimlik doğrulama türleri ve anahtarları yapılandırabilirsiniz.



Aşağıdaki trafik yakalama kaydı, düz metin kimlik doğrulaması etkinleştirilmiş bir OSPF hello paketini göstermektedir. Kimlik Doğrulama Türü'nün 1 (yani düz metin) olduğunu ve Kimlik Doğrulama Verisi'nin (parola) açıkça görülebildiğini fark edin. Bu nedenle, bu Kimlik Doğrulama Türü'nün sağladığı güvenlik düzeyi minimum düzeydedir, çünkü trafik yakalama aracına erişimi olan her kötü niyetli kişi parolayı görebilir.

Kod:
# Traffic capture of a Hello Packet with Plain Text Auth
Open Shortest Path First
    OSPF Header
        Version: 2
        Message Type: Hello Packet (1)
        Packet Length: 48
        Source OSPF Router: 1.1.1.1
        Area ID: 0.0.0.0 (Backbone)
        Checksum: 0xd08e [correct]
        Auth Type: Simple password (1)
        Auth Data (Simple): Cisco
    OSPF Hello Packet
        Network Mask: 255.255.255.0
        Hello Interval [sec]: 10
        Options: 0x12, (L) LLS Data block, (E) External Routing
        Router Priority: 1
        Router Dead Interval [sec]: 40
        Designated Router: 10.1.1.2
        Backup Designated Router: 10.1.1.1
        Active Neighbor: 2.2.2.2
    OSPF LLS Data Block
        Checksum: 0x7fc6
        LLS Data Length: 32 bytes
        Extended options TLV
        Unknown LLS TLV
        Unknown LLS TLV

Parola açık ve kolayca bulunabilir olduğundan, bu kimlik doğrulama türü kuruluşun güvenlik stratejisinde kullanılması önerilmez. Yanlış yapılandırma ve diğer insan hatalarından kaynaklanan kazara komşulukları önlemek için bir araç olarak kullanılabilir, ancak kötü amaçlı yönlendirme saldırılarına karşı etkili değildir.

Açık Metin Kimlik Doğrulamasını Yapılandırma

Cisco IOS-XE, bir yönlendiricide açık metin kimlik doğrulamasını etkinleştirmek için bize iki seçenek sunar.

Arayüz düzeyinde, aşağıdaki iki adımı kullanın:
Adım 1. Arayüz yapılandırma modunda, ip ospf authentication komutunu kullanarak ospf kimlik doğrulamasını etkinleştirin.

Adım 2. ip ospf authentication-key [password] komutunu kullanarak parolayı ayarlayın.

Alan düzeyinde, aşağıdaki iki adımı kullanın:
Adım 1. Yönlendirme işlemi yapılandırma modunda, area [area-id] authentication komutunu kullanarak ospf kimlik doğrulamasını etkinleştirin.
Adım 2. Bu alandaki her arayüz altında, ip ospf authentication-key [password] komutunu kullanarak parolayı ayarlayın.
Alan düzeyindeki yöntemi kullanmak, yapılandırma açısından bir ölçeklendirme sağlar. Yönlendiricinin aynı alanda birden fazla arayüzü varsa (örneğin, Alan 34'te 5 arayüzü olan dahili bir yönlendirici ise), Alan 34'teki tüm arayüzler için Kimlik Doğrulama Türü 1'i (Açık Metin) etkinleştirebilirsiniz. Ardından, arayüz yapılandırma modunda her arayüzün parolasını ayarlayabilirsiniz. Ancak, sonuç olarak, her iki yöntem de yönlendirici arayüzlerinde açık metin kimlik doğrulamasını etkinleştirir.

Yapılandırma Örneği

Şimdi, arayüz düzeyindeki ve alan düzeyindeki yapılandırma yöntemleri arasındaki farkları gösterecek olan aşağıdaki yapılandırma örneğini inceleyelim. Aşağıdaki laboratuvar topolojisini kullanıyoruz.



Şemada gösterildiği gibi, doğrudan birbirine bağlı ve tek bir alan 0 çalıştıran üç yönlendirici bulunmaktadır.

Arayüz seviyesinde OSPF kimlik doğrulamasını etkinleştirelim.
"Cisco" ortak şifresini kullanarak R1 ve R2 arasında açık metin kimlik doğrulamasını yapılandıralım.

Kod:
R1# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)# int e0/0
R1(config-if)# ip ospf authentication
R1(config-if)# ip ospf authentication-key Cisco
R1(config-if)# end

Kod:
R2# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#int e0/0
R2(config-if)# ip ospf authentication
R2(config-if)# ip ospf authentication-key Cisco
R2(config-if)# end

Kimlik doğrulama etkinleştirildikten sonra, yönlendiriciler aşağıdaki ekran görüntüsünde gösterildiği gibi, gönderdikleri her OSPF paketinin (Hello, LSU, LSR, vb.) OSPF başlığına parolayı eklemeye başlarlar.



Her iki uçta da düz metin kimlik doğrulaması yapılandırıldığında, aşağıdaki kimlik doğrulama dizisi gerçekleşir:

Her yönlendirici, yukarıdaki ekran görüntüsünde gösterildiği gibi, paketin içinde düz metin kimlik doğrulama anahtarı (parola) içeren OSPF mesajları gönderir.

Alıcı yönlendirici, alınan parolayı yapılandırılmış parolasıyla karşılaştırır.
İki anahtar eşleşirse, alıcı yönlendirici OSPF paketini kabul eder. Eşleşmezse, paket yok sayılır.

Alan düzeyinde OSPF kimlik doğrulamasını etkinleştirme.

Şimdi, alan düzeyinde yöntem ve "Admin123" parolasını kullanarak R2 ve R3 arasında kimlik doğrulamasını yapılandıralım.

Kod:
R2# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)# router ospf 1
R2(config-router)# area 0 authentication
R2(config-router)# exit
!
R2(config)# interface e0/1
R2(config-if)# ip ospf authentication-key Admin123
R2(config-if)# end
!

Kod:
R3# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)# router ospf 1
R3(config-router)# area 0 authentication
R3(config-router)# exit
!
R3(config)# interface e0/0
R3(config-if)# ip ospf authentication-key Admin123456789
% OSPF: Warning: The password/key will be truncated to 8 characters
R3(config-if)# end
!

Hem R2 hem de R3 yönlendiricilerini alan düzeyinde mod kullanarak düz metin kimlik doğrulaması için yapılandırdık. Yan not olarak iki şeye dikkat edin:

Kimlik doğrulama anahtarı 8 karakteri geçmemelidir çünkü paketteki alan 64 bit uzunluğundadır (bir ASCII karakteri 8 bittir). 8 karakterden fazla girerseniz, IOS ilk sekizini parola olarak kabul eder ve geri kalanını yok sayar. Örneğin, "Admin123456789" parolasını yapılandırdık, ancak yönlendirici bunu "Admin123" olarak yorumlar ve geri kalan karakterleri yok sayar.
Parola, soru işareti (?) dahil olmak üzere herhangi bir ASCII sembolü içerebilir; bu, sınav ortamlarında zor olabilir. Cisco IOS'ta, ? karakteri bağlama duyarlı bir yardım olarak kullanılır ve sistem bunu bir yardım isteği olarak yorumladığı için komutlara doğrudan girilemez. "Ctrl-V" tuşuna basıp ardından bir soru işareti ekleyebilirsiniz.
OSPF Düz Metin Kimlik Doğrulamasını Doğrulama
Yapılandırılmış OSPF kimlik doğrulamasını doğrulamak için `show ip ospf`, `show ip ospf interface` ve `show run` komutlarını kullanabilirsiniz.

`show ip ospf` komutu, her bir alana hangi kimlik doğrulama türünün uygulandığını gösterir.
`show ip ospf interface` komutu, her bir arayüze bağlı kimlik doğrulama yöntemini gösterir.

`show run` komutu, kimlik doğrulama yapılandırmasını doğrulamak ve sorun gidermek için en iyi komuttur.

Kod:
R1# sh ip ospf interface e0/0
Ethernet0/0 is up, line protocol is up
  Internet Address 10.1.1.1/24, Interface ID 2, Area 0
  Attached via Network Statement
  Process ID 1, Router ID 1.1.1.1, Network Type BROADCAST, Cost: 10
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           10        no          no            Base
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 2.2.2.2, Interface address 10.1.1.2
  Backup Designated router (ID) 1.1.1.1, Interface address 10.1.1.1
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    oob-resync timeout 40
    Hello due in 00:00:06
  Supports Link-local Signaling (LLS)
  Cisco NSF helper support enabled
  IETF NSF helper support enabled
  Can be protected by per-prefix Loop-Free FastReroute
  Can be used for per-prefix Loop-Free FastReroute repair paths
  Not Protected by per-prefix TI-LFA
  Index 1/1/1, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 1
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
    Adjacent with neighbor 2.2.2.2  (Designated Router)
  Suppress hello for 0 neighbor(s)
  Simple password authentication enabled

Aşağıdaki komut, alanın düz metin kimlik doğrulamasıyla yapılandırıldığını gösterir.

Kod:
R2# sh ip ospf
 Routing Process "ospf 1" with ID 2.2.2.2
 Start time: 00:01:45.301, Time elapsed: 04:00:00.774
 Supports only single TOS(TOS0) routes
 Supports opaque LSA
 Supports Link-local Signaling (LLS)
 Supports area transit capability
 Supports NSSA (compatible with RFC 3101)
 Supports Database Exchange Summary List Optimization (RFC 5243)
 Maximum number of non self-generated LSA allowed 50000
    Current number of non self-generated LSA 3
    Threshold for warning message 75%
    Ignore-time 5 minutes, reset-time 10 minutes
    Ignore-count allowed 5, current ignore-count 0
 Event-log enabled, Maximum number of events: 1000, Mode: cyclic
 Router is not originating router-LSAs with maximum metric
 Initial SPF schedule delay 50 msecs
 Minimum hold time between two consecutive SPFs 200 msecs
 Maximum wait time between two consecutive SPFs 5000 msecs
 Incremental-SPF disabled
 Initial LSA throttle delay 50 msecs
 Minimum hold time for LSA throttle 200 msecs
 Maximum wait time for LSA throttle 5000 msecs
 Minimum LSA arrival 100 msecs
 LSA group pacing timer 240 secs
 Interface flood pacing timer 33 msecs
 Retransmission pacing timer 66 msecs
 EXCHANGE/LOADING adjacency limit: initial 300, process maximum 300
 Number of external LSA 0. Checksum Sum 0x000000
 Number of opaque AS LSA 0. Checksum Sum 0x000000
 Number of DCbitless external and opaque AS LSA 0
 Number of DoNotAge external and opaque AS LSA 0
 Number of areas in this router is 1. 1 normal 0 stub 0 nssa
 Number of areas transit capable is 0
 External flood list length 0
 IETF NSF helper support enabled
 Cisco NSF helper support enabled
 Reference bandwidth unit is 100 mbps
    Area BACKBONE(0)
        Number of interfaces in this area is 2
        Area has simple password authentication
        SPF algorithm last executed 00:15:48.026 ago
        SPF algorithm executed 13 times
        Area ranges are
        Number of LSA 5. Checksum Sum 0x024765
        Number of opaque link LSA 0. Checksum Sum 0x000000
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
 Maintenance Mode ID:     133285927055344
 Maintenance Mode:        disabled
 Maintenance Mode Timer:  stopped (0)
  Graceful Reload FSU Global status : None (global: None)

Unutmayın ki, gerçek şifreyi görmenin tek yolu `show run` komutunu çalıştırmak veya `debug IP OSPF packet` komutunu kullanmaktır.

Kod:
R3# sh run | section ospf
router ospf 1
 router-id 3.3.3.3
 area 0 authentication
 network 10.0.0.0 0.255.255.255 area 0

Kod:
R3# sh run int e0/0
interface Ethernet0/0
 ip address 10.1.2.3 255.255.255.0
 ip ospf authentication-key Admin123
end

Çalışmakta olan yapılandırma dosyasında şifrenin açık metin olarak görünmesi güvenlik endişeleri nedeniyle istenmeyen bir durum olabilir. Bunu önlemek için, çalışmakta olan yapılandırma dosyasındaki açık metin şifrelerini şifrelemek üzere aşağıdaki komutu kullanabilirsiniz.

Kod:
R3# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)# service password-encryption
R3(config)# end
R3#

Şimdi, Eth0/0 arayüzünün çalışan yapılandırmasını kontrol edersek, şifreyi açık metin olarak göremiyoruz.

Dikkat edin, `service password-encryption` komutu OSPF'nin çalışma şeklini etkilemez; yalnızca çalışan yapılandırma dosyasında saklanan tüm açık metin parolaları şifreler. OSPF, kimlik doğrulama anahtarını yine de açık metin olarak OSPF başlığına ekler.​
 
Eline sağlık
 
Eline sağlık
 

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