![Haben iptables-Regeln Kontrolle über Raw-Socket-Pakete?](https://rvso.com/image/776299/Haben%20iptables-Regeln%20Kontrolle%20%C3%BCber%20Raw-Socket-Pakete%3F.png)
Ein von mir verwendetes Programm generiert einige TCP-Verbindungen im Raw-Packet-Modus. Nehmen wir an, ich habe diese beiden Befehle ausgeführt:
/sbin/iptables -A INPUT -s 8.0.0.0/8 -j DROP
/sbin/iptables -A OUTPUT -d 8.0.0.0/8 -j DROP
Kann man davon ausgehen, dass an dieses Netzwerk keine Pakete gesendet werden?
Antwort1
Leider scheint es nicht zu funktionieren. So habe ich es überprüft. Lassen Sie uns zwei Server verwenden – 1.1.1.1 und 2.2.2.2. 1.1.1.1 sendet Pakete, 2.2.2.2 hört zu.
Lassen Sie uns zunächst das Sniffing unter 2.2.2.2 einrichten:
➜ ~ sudo tcpdump -vv 'src 1.1.1.1'
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
Senden wir nun ein Paket über Port 995 an diese IP:
$ zmap --whitelist-file=<( echo 2.2.2.2 ) -p 995 -n 1
Wie erwartet sehen wir Datenverkehr von 1.1.1.1 auf 2.2.2.2:
11:18:49.330632 IP (tos 0x0, ttl 250, id 54321, offset 0, flags [none], proto TCP (6), length 40)
1.1.1.1.47495 > 2.2.2.2.pop3s: Flags [S], cksum 0x5e8a (correct), seq 4248475135, win 65535, length 0
11:18:49.331688 IP (tos 0x0, ttl 59, id 0, offset 0, flags [DF], proto TCP (6), length 40)
1.1.1.1.47495 > 2.2.2.2.pop3s: Flags [R], cksum 0x5e87 (correct), seq 4248475136, win 0, length 0
Versuchen wir nun, dies unter 1.1.1.1 zu blockieren und den Test zu wiederholen:
$ /sbin/iptables -A OUTPUT -d 2.2.2.2 -j DROP
$ zmap --whitelist-file=<( echo 2.2.2.2 ) -p 995 -n 1
Leider werden weitere TCPdump-Daten angezeigt. Dies bedeutet, dass es nicht funktioniert hat.
Ich habe das Problem schließlich auf einer anderen Ebene gelöst, indem ich die Firewall-Funktion meines Cloud-Anbieters genutzt habe.