Cisco Flow ile Yetkisiz DHCP Sunucuların Network Üzerinde Tespit Edilmesi
Merhabalar, eğer ortamınızda yetkisiz DHCP kaynaklarını tespit etmek ve bu yolla oluşabilecek olası zafiyetleri engellemek istiyorsanız öncelikle network katmanında protocol, port, source, destination ip bilgilerini toplayabildiğiniz bir yapıya ihtiyacınız var. Ben bu makalemde Cisco cihazlar için bu yapılandırmayı “flow” konfigürasyonu ile gerçekleştireceğim.
Öncelikle DHCP için kısa bir bilgi vermek istiyorum. DHCP Server UDP 67 portundan kendisi source ip iken broadcast ip’ye yayın basar. Bu DHCP Server’ın tipik hareketidir.
Flow farklı bir konu olduğu için basit bir şekilde konfigürasyonunu ileteceğim. Merak edenler için;
Flow konfigürasyonu gireceğiniz yer biraz kritik. Mesela ben gateway’e girdim. Farklı lokasyonlar arasında ppp bağlantı var. Bu tamamiyle sizin ihtiyacınıza göre tercihiniz. Tüm network’ünüzün üzerinden aktığı bir yer en uygunu olacaktır. Sözü çok uzatmadan cisco flow konfigürasyonuna geçelim.
Router# ip flow-cache timeout active 1
Router# ip flow-export source GigabitEthernet0/1 // siz gig0/1 değil de farklı bir interface’e yapabilirsiniz. Unutmayın ki bu kısımdan tüm network geçişleri olmalı ki sonrasında flow konfigürasyonunuz bir işe yarasın.
Router# ip flow-export version 9
Router# ip flow-export destination 10.x.x.x 2055 // UDP 2055 burdaki. UDP decapsulation, encapsulation işlemlerine uğramadığı için daha hızlı çalışan bir protokol. Destination kısmı ise monitoring tool’unuzun kurulu olduğu sunucunun ip adresidir.
Router# ip flow-top-talkers
Router# top 10
Router# sort-by bytes
Router# cache-timeout 5000
Router# match source address 0.0.0.0 0.0.0.0
Router# match destination address 0.0.0.0 0.0.0.0
Router(config)#int gig0/1
Router(config-if)# ip flow ingress
Router(config-if)# ip flow egress
Flow konfigürasyonu tamamdır. Network’te doğru yere girdiyseniz tüm akış size gelir ama nasıl? Mesela PRTG kullanabilirsiniz. 100 sensöre kadar ücretsiz bir program. PRTG kurulumu çok basittir. Internetten araştırabilirsiniz.
Artık tüm network’ü izleyebildiğimize göre PRTG’deki adımları sizlere açıklayabilirim.
Receive NetFlow Packets on UDP Port : 2055
Sender IP : Mesela ip flow-export source Gig0/1’in ip adresi neyse onu gireceksiniz.
Active Flow Timeout (Minutes) : 0
Yine aynı sensörde biraz aşağı inerseniz include ve exclude kısımları var. Buralara gireceğiniz filtrelerle dilediğiniz port/ip/protocol üzerine yoğunlaşabilirsiniz. Bizim amacımız yetkisiz dhcp’lerin tespiti. Aslında flow konfigürasyonunu doğru yere girdiyseniz artık network üzerinde herşeyi monitor edebilirsiniz.
Include Filter : Protocol[UDP] and SourcePort[67]
Exclude Filter : Burda gerçek DHCP server’ınızın IP adresini source olarak girmelisiniz ki onu dışarıda bırakalım. O zaten DHCP Server olmak zorunda.
Sonrasında ise bu sensor’e bir uyarı sistemi girilmeli. Ben açıkçası sürekli uyarı vermesin diye bir saatte 0,18Kbit’i geçerse uyarı ver dedim.
Böylelikle ağınıza bir DHCP Server olarak çalışan aygıt girdiğinde temel hareketi source port 67’den ve UDP protokolünü kullanarak trafik yaratmak olacak. Zaten yukarıda yaptığımız filtreleme de tamamiyle bu tür bir trafik üstüne odaklanmış halde. E-mail ile uyarı almak da mümkün PRTG’de. Böylelikle DHCP Snooping’i bir şekilde farklı markalar, yapı vb. gibi durumlardan ötürü uygulayamayanlar için en azından bir ikaz mekanizması kurmuş oluyoruz.
Sanırım bu yazıda asıl dikkat çeken “yetkisiz dhcp avı” değil de flow konfigürasyonu ile neler yapabileceğinizdir J
Umarım faydalı olmuştur.
Hoşçakalın.