Questa mattina, analizzando i log di IPTABLES su alcune delle macchine che gestisco, ho notato la presenza di 5 miliardi di messaggi del tipo:
May 5 13:31:02 fw-scar kernel: [868646.974533] Spoofed traffic detected: IN=eth1 OUT= MAC= SRC=10.*.*.* DST=224.0.0.251 LEN=74 TOS=0x00 PREC=0x00 TTL=255 ID=0 DF PROTO=UDP SPT=5353 DPT=5353 LEN=54
May 5 13:31:04 fw-scar kernel: [868648.976380] Spoofed traffic detected: IN=eth1 OUT= MAC= SRC=10.*.*.* DST=224.0.0.251 LEN=74 TOS=0x00 PREC=0x00 TTL=255 ID=0 DF PROTO=UDP SPT=5353 DPT=5353 LEN=54
May 5 13:58:15 fw-scar kernel: [870280.768746] Spoofed traffic detected: IN=eth1 OUT= MAC= SRC=10.*.*.* DST=224.0.0.251 LEN=74 TOS=0x00 PREC=0x00 TTL=255 ID=0 DF PROTO=UDP SPT=5353 DPT=5353 LEN=54
May 5 13:58:16 fw-scar kernel: [870281.770192] Spoofed traffic detected: IN=eth1 OUT= MAC= SRC=10.*.*.* DST=224.0.0.251 LEN=74 TOS=0x00 PREC=0x00 TTL=255 ID=0 DF PROTO=UDP SPT=5353 DPT=5353 LEN=54
May 5 13:58:18 fw-scar kernel: [870283.772627] Spoofed traffic detected: IN=eth1 OUT= MAC= SRC=10.*.*.* DST=224.0.0.251 LEN=74 TOS=0x00 PREC=0x00 TTL=255 ID=0 DF PROTO=UDP SPT=5353 DPT=5353 LEN=54
Uhm, quell'indirizzo di multicast mi ricorda qualcosa... ma certo! E' l'indirizzo utilizzato da mDNS (la m ovviamente sta per multicast). In particolare, tale protocollo viene impiegato dall'utility Zeroconf per consentire "l'autoconfigurazione" delle interfacce di rete, più precisamente per individuare gli hostname delle macchine presenti in LAN e dei record DNS caricati localmente su di esse.
La regola di IPTABLES che ha generato tale log è la seguente:
iptables -A INPUT -m state --state INVALID -j LOG --log-prefix "Invalid session detected: " --log-level 4
che, per evitare ulteriore entry simili a quelle riportate in precedenza, dovrà diventare:
iptables -A INPUT ! -d 224.0.0.251 -m state --state INVALID -j LOG --log-prefix "Invalid session detected: " --log-level 4
Così facendo, lo stateful inspection non identificherà le richieste mDNS come traffico anomalo.
A presto.