Ci sono voci nel file /var/log/messages come mostrato di seguito:
# tailf /var/log/messages Aug 22 11:08:21 server kernel: martian source 192.168.12.197 from 192.168.12.198, on dev eth0 Aug 22 11:08:21 server kernel: ll header: 08:00:00:00:45:00:01:00:00:00:40:00:40:11:9f:11:c0:a8:0c:c6:c0:a8:0c:c5 Aug 22 11:08:22 server kernel: martian source 192.168.12.192 from 192.168.12.198, on dev eth0 Aug 22 11:08:22 server kernel: ll header: 08:00:00:00:45:00:00:6c:00:00:40:00:40:11:9f:aa:c0:a8:0c:c6:c0:a8:0c:c0 Aug 22 12:11:27 server kernel: martian source 192.168.12.192 from 192.168.12.198, on dev eth0 Aug 22 12:11:27 server kernel: ll header: 08:00:00:00:45:00:01:00:00:00:40:00:40:11:9f:16:c0:a8:0c:c6:c0:a8:0c:c0
Cos'è un pacchetto marziano?
Lo IANA definisce un pacchetto marziano come quello che arriva su un'interfaccia in cui l'interfaccia non utilizza quella rete. Per Linux, è qualsiasi pacchetto che arriva su un'interfaccia che non è configurata in alcun modo per quella sottorete. Qualsiasi avviso di pacchetto marziano dovrebbe essere indagato. Pacchetti marziani:
- Sono usati frequentemente nelle intrusioni di hacking.
- Potrebbe essere un sintomo di un server mal configurato altrove sulla rete.
- Può indicare un problema con l'infrastruttura di rete.
Leggere un messaggio marziano
Un messaggio di origine marziana è strutturato come segue:
kernel: martian source [destination IP] from [source IP], on dev [interface packet arrived on] kernel: ll header: [destination MAC address]:[source MAC address]:[ethertype] (for ethernet)
Ad esempio, dato il messaggio:
kernel: martian source 192.168.0.1 from 192.168.0.255, on dev eth0 kernel: ll header: ff:ff:ff:ff:ff:ff:00:12:34:00:ab:cd:08:00
Qui,
IP di destinazione :192.168.0.1
IP sorgente :192.168.0.255
Interfaccia in entrata :eth0
MAC di destinazione :ff:ff:ff:ff:ff:ff
Fonte MAC :00:12:34:00:ab:cd
Ethertype :0x0800 (IPv4)
Abilitazione dei messaggi marziani
Se gli elementi di configurazione nel file /etc/sysctl.conf hanno disabilitato il rilevamento dei messaggi marziali, dovrebbero essere abilitati e il programma sysctl dovrebbe essere eseguito nuovamente. Alcuni esempi di voci da controllare sono:
# vi /etc/sysctl.conf net.ipv4.conf.all.log_martians=1 net.ipv4.conf.default.log_martians=1 net.ipv4.conf.bondib0.log_martians=1
Conclusione
I messaggi di origine marziana possono indicare un problema con l'ambiente di rete. Potresti voler indagare:
- Non ci sono loop di livello 2 nella rete:se l'host invia un pacchetto e poi ne riceve una copia dalla rete, verrà registrato come marziano
- Non ci sono host che trasmettono traffico con un IP sorgente che non dovrebbe essere utilizzato come un IP multicast o broadcast
- L'indirizzamento di rete su tutti i sistemi nella sottorete è applicato correttamente ed è valido, tutti gli host devono avere un indirizzo IP valido e la maschera di sottorete corretta (nota anche come prefisso di rete)