it-swarm.asia

Ağımda hileli bir DHCP sunucusu olup olmadığını nasıl bulabilirim?

Ağımda hileli bir DHCP sunucum olup olmadığını belirlemeye yönelik en iyi yaklaşım nedir?

Çoğu yöneticinin bu tür sorunlara nasıl yaklaştığını merak ediyorum. DHCP Prob arama yoluyla buldum ve denemeyi düşündüm. Kimse onunla deneyim oldu mu? (Derlemek ve yüklemek için zaman ayırmadan önce bilmek istiyorum).

Sahte DHCP sunucularını bulmaya yönelik faydalı araçlar veya en iyi uygulamalar biliyor musunuz?

92
l0c0b0x

Basit bir yöntem, bir bilgisayarda tcpdump/wireshark gibi bir dinleyiciyi çalıştırmak ve bir DHCP isteği göndermektir. Gerçek DHCP sunucunuzdan başka teklifler görürseniz, bir sorununuz olduğunu bilirsiniz.

54
Zoredache

Tekrarlamak ve diğer cevaplardan bazılarına eklemek için:

Üretim DHCP sunucunuzu geçici olarak devre dışı bırakın ve diğer sunucuların yanıt verip vermediğine bakın.

Bir Windows makinesinde ipconfig /all Çalıştırarak sunucunun IP adresini alabilir ve ardından arp -a Kullanarak bu IP adresini arayarak MAC adresini alabilirsiniz.

Mac'te ipconfig getpacket en0 (Veya en1) komutunu çalıştırın. Bkz. http://www.macosxhints.com/article.php?story=20060124152826491 .

DHCP sunucusu bilgileri genellikle/var/log/messages dizinindedir. Sudo grep -i dhcp /var/log/messages*

Üretim DHCP sunucunuzu devre dışı bırakmak elbette iyi bir seçenek olmayabilir.

Özellikle sahte DHCP sunucularını arayan bir araç kullanın

Araçların listesi için (çoğu diğer yanıtlarda listelenen) http://en.wikipedia.org/wiki/Rogue_DHCP adresine bakın.

DHCP tekliflerini engellemek için anahtarları yapılandırın

Yönetilen anahtarların çoğu, sahte DHCP sunucularını önlemek için yapılandırılabilir:

22
Jason Luther

dhcpdump , giriş formunu alır tcpdump ve yalnızca DHCP ile ilgili paketleri gösterir. LAN'ımızda sahte DHCP olarak poz veren köklü Windows bulmama yardımcı oldu.

17
vartec

Wireshark/DHCP Explorer/DHCP Prob yaklaşımları bir kez veya periyodik kontrol için iyidir. Ancak, ağınızdaki DHCP Gözetleme desteğine bakmanızı tavsiye ederim. Bu özellik, ağdaki hileli DHCP sunucularından sürekli koruma sağlar ve birçok farklı donanım satıcısı tarafından desteklenir.

Cisco docs bölümünde belirtildiği gibi ayarlanan özellik.

• Güvenilmeyen kaynaklardan alınan DHCP iletilerini doğrular ve geçersiz iletileri filtreler.

• Güvenilir ve güvenilir olmayan kaynaklardan gelen DHCP trafiğini hız sınırlandırır.

• Kiralanan IP adreslerine sahip güvenilmeyen ana makineler hakkında bilgi içeren DHCP gözetleme bağlayıcı veritabanını oluşturur ve bakımını yapar.

• Güvenilmeyen ana bilgisayarlardan gelen sonraki istekleri doğrulamak için DHCP gözetleme bağlayıcı veritabanını kullanır.

15
Dave K

dhcploc.exe , Windows sistemlerinde en hızlı ve en kullanışlı yoldur. XP Destek Araçları'nda bulunur. Destek Araçları her OEM/perakende XP diskinde bulunur, ancak “kurtarma disklerinde” olabilir veya olmayabilir) Ayrıca bazı OEM'ler tarafından sağlanır. Ayrıca MS'den indir .

Basit bir komut satırı aracı. dhcploc {yourIPaddress} komutunu çalıştırırsınız ve sahte bir keşif yapmak için 'd' tuşuna basarsınız. Herhangi bir tuşa basmadan çalışır durumda bırakırsanız, her DHCP isteğini görüntüler ve duyar. Çıkmak için 'q' tuşuna basın.

10
quux

Scapy, bu tür görevler için iyi bir python tabanlı paket hazırlama aracıdır. Tam olarak bunun nasıl yapılacağına dair bir örnek vardır burada .

9
Kyle Brandt

l0c0b0x 'ın bootp.type == 2 filtre olarak. Bootp.type filtresi yalnızca Wireshark/tshark'ta kullanılabilir. Yorumunun bağlamsal konumu beni inandırmaya teşvik eden tcpdump'ta mevcut değil.

Tshark bunun için mükemmel çalışıyor.

Ağımız, her biri "yerel" yayın alanında ve yönetimsel alt ağda bir şekilde ya da diğerinde bir varlık noktası bulunan kendi Linux tabanlı problarına sahip çok sayıda yayın alanına bölünmüştür. Tshark, ClusterSSH ile birleştiğinde, ağın diğer eğimli köşelerinde DHCP trafiğini veya (bu konuda başka bir şey) kolayca aramama izin veriyor.

Bu, Linux kullanarak DHCP yanıtlarını bulacaktır:

# ifconfig ethX promisc
# tshark -i ethX -n port 68 -R 'bootp.type == 2'
8
user62491

ağda haydut bir dhcp sunucusu olduğunu belirledikten sonra bunu çözmenin en hızlı yolunu buldum ...

Tüm şirkete bir e-posta gönder:

"hanginiz LAN'a kablosuz yönlendirici eklediyse, interneti herkes için öldürdünüz"

hızlı bir şekilde bir koyun yanıtı veya çakışan cihazın kaybolmasını bekle :)

6
Shh now
3
juFo

Ana DHCP sunucusunu devre dışı bırakın ve (yeniden) bir bağlantı yapılandırın.

Bir IP adresi alırsanız, bir sahtekarlığınız var.

Kullanışlı bir Linux bilgisayarınız varsa, standart dhcpclient size DHCP sunucusunun IP adresini söyler (aksi takdirde DHCP yanıtının nereden geldiğini görmek için trafiği koklayabilirsiniz).

3
Vinko Vrsalovic

Küçük bir ağ çalıştırmanın en basit yolu, dhcp sunucunuzu kapatmak/devre dışı bırakmak/fişini çekmek ve daha sonra bir istemcide ipconfig/renew veya benzerlerini çalıştırmak ve elde edip IP'nizde bir şey varsa, ağ.

Başka bir yol, ağ trafiğinize bakmak ve DHCP bağlantılarını bulmak için Wireshark paket yakalayıcı/analizörü kullanmaktır, bunun nasıl yapılabileceği konusunda bir laboratuvar çalışma sayfası vardır burada .

Bunu yapmak için orantılı DHCP Explorer başka bir orijinal yardımcı programda bahsettiğiniz DHCP probu da kullanılabilir.

3
Jona

Ağlarınızın ping taraması yapabilir ve ardından bunu DHCP sunucunuz tarafından verilen DHCP kiralamalarının sayısıyla karşılaştırabilirsiniz.

Bu sayıyı hafifçe kıracak statik cihazların (belki de yönlendirici arabirimleri ve yazıcılar) sayısı hakkında genel bir fikriniz olması gerekir, ancak bu, birden fazla ağda bunları tanımlamanın hızlı ve doğru bir yolu olmalıdır.

2
Peter

debian/ubuntu'da kişi ayrıca dhcpdump ve/veya tcpdump kullanma gibi seçeneklere sahiptir. dhclient

Dhcpdump kullanın:

  • 1.a) bir Kabuk/kabukta dhcpdump -i eth0 Çalıştırın (eth0 veya arayüzünüzün adı)
  • 1.b) başka bir Kabuk'ta dhclient başlat (başarılı bir şekilde çalışması gerekmez)
  • 1.c) bilgi için dhcpdump çıktısına bakın (en ayrıntılı ayrıntıların Nice formatlı, bilgilendirici bir listesi olmalıdır)

Dhcpdump kullanmak istemiyorsanız 2. seçenek:

  • 2.a) bir Kabuk/pencerede tcpdump -i eth0 -t -n > /tmp/my_file.txt Komutunu çalıştırın
    (isteğe bağlı: -t = zaman damgasını devre dışı bırak // -n = ad çözümlemesini devre dışı bırak, sadece IP adresi, sunucu adları yok (RHEL/centos use -nn için))
  • 2.b) başka bir Kabuk'ta dhclient başlat (başarılı bir şekilde çalışması gerekmez)
  • 2.c) çalışan tcpdump () işlemini durdurun
  • 2.d) /tmp/my_file.txt dosyasını favori düzenleyicinizle inceleyin ve ".53" (varsayılan DNS bağlantı noktası)/"NX"/"CNAME"/"A?"/"AAAA" -

* sidenote: tcpdump ve dhcpdump muhtemelen kurulu olmalıdır (örneğin: Sudo apt get install tcpdump dhcpdump); dhcpdump tcpdump'a bağlıdır

2
eli

Biri izleme ve diğeri istek göndermek için olmak üzere iki terminal başlatmanızı öneririm. Terminal1, MAC adresi de dahil olmak üzere mevcut tüm DHCP sunucularından gelen yanıtları gösterecektir. Bu örnek Ubuntu'da çalıştırıldı:

Terminal1 (izleme için):

Sudo tcpdump -nelt udp bağlantı noktası 68 | grep -i "önyükleme. * yanıt"

tcpdump: ayrıntılı çıkış bastırıldı, enp2s0, bağlantı tipi EN10MB (Ethernet) üzerinde tam protokol kod çözme dinleme için -v veya -vv kullanın, yakalama boyutu 262144 bayt 20: a6: 80: f9: 12: 2f> ff: ff: ff: ff: ff: ff, ethertype IPv4 (0x0800), uzunluk 332: 192.168.1.1.67> 255.255.255.255.68: BOOTP/DHCP, Yanıt, uzunluk 290 00: 23: cd: c3: 83: 8a> ff: ff : ff: ff: ff: ff, ethertype IPv4 (0x0800), uzunluk 590: 192.168.1.253.67> 255.255.255.255.68: BOOTP/DHCP, Yanıtla, uzunluk 548

Terminal2 (istek göndermek için):

Sudo nmap - kod yayını-dhcp-keşfetmek -e eth0

Nmap 7.01 ( https://nmap.org ) 2019-10-13 21:21 tarihinde EEST Tarama öncesi komut dosyası sonuçları: | broadcast-dhcp-discover : | Yanıt 1/1: | IP Sunulan: 192.168.1.228 | DHCP İleti Türü: DHCPOFFER | IP Adresi Kiralama Süresi: 2h00m00s | Sunucu Tanımlayıcısı: 192.168.1.1 | Alt Ağ Maskesi: 255.255.255.0 | Yönlendirici: 192.168.1.1 | _ Etki Alanı Ad Sunucusu: 8.8.8.8, 8.8.4.4 UYARI: Hedef belirtilmedi, 0 ana bilgisayar tarandı. Nmap bitti: 0 IP adresi (0 ana bilgisayar yukarı) 0.94 saniyede tarandı

Bu izleme terminali sadece tüm yanıtları görmek için gereklidir (nmap sadece ilk yanıtı gösterebilir).

1
ajaaskel