Non disabilitare il protocollo ICMP!
Nel mondo dell’informatica, come probabilmente in molte altre professioni, raggiungere alti livelli di qualità nel proprio lavoro non significa solo imparare continuamente cose nuove, ma anche e soprattutto imparare cosa non fare. Questo è particolarmente vero per un sistemista che deve garantire la sicurezza e la solidità della rete.
Una della cose che un buon sistemista non dovrebbe fare è disabilitare il protocollo ICMP verso la propria rete. Vediamo perchè.
Il protocollo ICMP
ICMP (Internet Control Message Protocol) è un protocollo. per così dire, di “basso livello”: è quel canale tramite cui i dispositivi di una rete IP si scambiano messaggi di servizio. Uno dei tipi di messaggi più famosi è il ping, ovvero il comando per verificare se un host IP è attivo.
Esistono numerosi altri tipi di messaggi ICMP, che servono ad esempio per accordarsi su alcuni parametri di trasmissione o per comunicare errori e anomalie, ma sempre tra macchina e macchina. Per ulteriori dettagli potete approfondire su WikiPedia.
Intrusion Detection System
Il problema è sempre quello: concetti e tecnologie di per sè innocui vengono usati da malintenzionati per creare danno.
Qualcuno potrebbe inviare a ripetizione ping verso una macchina, con una rapidità e una frequenza tale da occupare le risorse della macchina remota, e creare così un guasto di tipo Denial Of Service.
In casi come questi, la soluzione corretta è quella di implementare delle soglie: ad esempio, se mi arrivano 100 ping al secondo da un certo indirizzo IP, è molto probabile che sia un tentativo di attacco per cui blocco quell’indirizzo. Oppure, per evitare il pericolo di un attacco distribuito (ovvero proveniente da più indirizzi IP) potrei impostare la mia macchina per rispondere solo fino a un certo numero di ping al secondo.
Queste soluzioni intervengono solo nei momenti di crisi, evitano il danno, e poi tutto torna a funzionare come prima. Un sistema decente di Intrusion Detection vi consente di fare queste cose.
Blocco totale
Solo che un sistema di Intrusion Detection costa e/o richiede tempo per essere implementato con cura. Quindi i router più economici e i sistemisti più superficiali ne implementano una versione più grezza, che si traduce in “blocca il protocollo ICMP”. Sui router ADSL casalinghi, trovate a volte il parametro “blocca Ping da Internet”.
Ma questo è sbagliato. Chiudendo completamente la porta, stiamo chiudendo la porta anche a una serie di potenziali messaggi utili che servono alle nostre macchine per funzionare, fino a casi in cui questo comporta rallentamenti o interruzioni del traffico. Anche il ping, ovvero stabilire se una certa macchina è attiva o meno, non dovrebbe essere bloccato definitivamente. Non fosse altro perchè è il primo controllo da fare per sapere se un server di rete è attivo o meno.
Soluzione
Lasciate attivo il protocollo ICMP nelle regole di sicurezza del vostro firewall.
Per la maggior parte delle reti la probabilità di essere vittima di un Denial Of Service è bassa, e anche nel caso avvenga i danni sono limitati. Se invece avete server interni che pubblicano un servizio critico, allora fornitevi di un sistema di Intrusion Detection serio.