Tcpdump iptable'ları atlar mı?


48

Yanlışlıkla kısa sürede Rusya'dan / Rusya'ya bir yerden kaynaklanan bir sürü DDoS saldırısı için kullanılan açık çözümleyici DNS sunucusu kurdum. Bu nedenle, güvenilir IP'ler dışındaki herkes için 53 numaralı bağlantı noktasını her iki DNS sunucusunda da tamamen engelledim. Çalışıyor, artık onlara bağlanamıyorum, ama bana asıl garip gelen şey, eth1 üzerinde tcpdump çalıştırdığımda (bu halka açık internet ile sunucuda arayüzdür) saldırgandan port 53'e gelen bir sürü paket görüyorum.

İptables onları bıraksa bile, bu paketleri tcpdump görüntülemek normal mi? Yoksa iptables'ları yanlış mı yapılandırdım?

Öte yandan, sunucumda daha önce yaptığım hiçbir giden paket göremiyorum, bu nedenle güvenlik duvarının bir tür çalışma olduğunu düşünüyorum. Bu beni şaşırttı, çekirdeğin tamamen paketleri düşürmemesi? Veya tcpdumppaketleri paketlenebilir hale getirmeden önce bile görecek şekilde çekirdeğe bağlanmış mı?

Yanıtlar:


61

Bu güzel bir soru.

Nitekim olarak, tcpdump'ı yolu üzerinde (eğer olacak ve NIC) ilk yazılım tel sonra bulundu olan IN ve yolu üzerinde sonuncusu OUT .

Wire -> NIC -> tcpdump -> netfilter/iptables

iptables -> tcpdump -> NIC -> Wire

Böylece arayüzünüze ulaşan tüm paketleri ve arayüzünüzden çıkan bütün paketleri görür. Bağlantı noktası 53'teki paketler tcpdump tarafından görüldüğü gibi bir yanıt alamadığından, iptables kurallarınızın doğru yapılandırıldığını başarıyla doğruladınız.

DÜZENLE

Belki birkaç ayrıntı eklemeliyim. tcpdump , paket soketi oluşturan bir kütüphane olan libpcap'a dayanır . Ağ yığınında düzenli bir paket alındığında, çekirdek ilk önce yeni gelen paketle ilgilenen bir paket soketi olup olmadığını kontrol eder ve eğer varsa, paketi o paket soketine iletir. ETH_P_ALL seçeneği seçilmiş ise, tüm protokoller paket soketine girer .

libpcap , seçenek etkinleştirilmiş böyle bir paket soketini uygular, bir kopyasını kendi kullanımı için saklar ve paketi ilk önce çekirdeği netfilter'e , çekirdeği ilk önce netfilter'e geçirmek de dahil olmak üzere, her zamanki gibi işlediği yerde, ağ yığınına geri kopyalar. iptables -space karşılığı . Aynı şey, ters sırada ( yani önce ağ filtresi, ardından paket soketinden geçen son geçiş), dışarı çıkarken.

Bu hack eğilimli mi? Ama tabii. Güvenlik duvarı üzerlerine koymadan önce kök kitleye iletilen iletişimi engellemek için libpcap kullanan kavram-delil kök setleri kesinlikle vardır . Ama basit bir Google sorgu ortaya çıkarır gerçeği ile karşılaştırıldığında bile bu pales çalışma bile kod gizleme trafiğini libpcap . Yine de profesyonellerin çoğu, ağ paket filtreleri hata ayıklamadaki avantajların dezavantajların çok üstünde olduğunu düşünüyor.


Hangi paketlere izin verildiğini ve hangilerinin atıldığını görebilmem için bunu göstermenin bir yolu var mı?
Petr,

2
@Petr iptables düştü paketleri günlüğe kaydedebilirsiniz, thegeekstuff.com/2012/08/iptables-log-packets
MariusMatutiae
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.