È una cattiva idea che un firewall blocchi ICMP?

Questa domanda è stata ispirata da questa risposta che afferma in parte:

Il file manifest del firewall generico termina eliminando tutto ciò che altrimenti non avrei consentito (a parte ICMP. Non disattivare ICMP).

Ma è davvero una buona pratica per un firewall consentire lICMP? Quali sono le implicazioni per la sicurezza e ci sono casi in cui ICMP dovrebbe essere disattivato?

Commenti

Answer

Rispetto ad altri protocolli IP, ICMP è abbastanza piccolo, ma serve un gran numero di funzioni disparate. Fondamentalmente ICMP è stato progettato come meccanismo di debug, risoluzione dei problemi e segnalazione degli errori per IP. Questo lo rende incredibilmente prezioso, quindi è necessario riflettere molto per spegnerlo. Sarebbe un po come aggiungere >/dev/null 2>&1 alla fine di tutte le voci di cron.

La maggior parte delle volte quando parlo con le persone del blocco di ICMP loro “sono parlando davvero di ping e traceroute. Questo si traduce in 3 tipi

  • 0 – Echo Reply (risposta ping)
  • 8 – Echo Request (richiesta ping)
  • 11 – Tempo scaduto

Sono 3 tipi su 16. Diamo unocchiata a un paio degli altri tipi di ICMP disponibili.

  • 4 – Source Quench (inviato da un router per chiedere a un host di rallentare le sue trasmissioni)
  • 3 – Destination Unreachable (consiste in 16 diversi tipi di messaggi che vanno dalla segnalazione di un problema di frammentazione fino a un firewall segnalando che una porta è chiusa)

Entrambi possono essere preziosi per mantenere gli host non dannosi funzionanti correttamente su una rete. In effetti ce ne sono due (probabilmente di più ma questi sono i più ovvi per me) casi molto buoni in cui non vuoi limitare lICMP.

  • Percorso Scoperta MTU – Usiamo una combinazione del flag Don “t Fragment e del codice di tipo 3 4 (Destinazione irraggiungibile – Frammentazione richiesta e flag DF impostato) per determinare la MTU più piccola sul percorso tra gli host. In questo modo evitiamo la frammentazione durante la trasmissione.
  • Active Directory richiede che i client eseguano il ping dei controller di dominio per estrarre gli oggetti Criteri di gruppo. Usano il ping per determinare il controller “più vicino” e se nessuno risponde, si presume che nessuno sia abbastanza vicino. Quindi laggiornamento della politica non avviene.

Questo non vuol dire che dovremmo necessariamente lasciare tutto aperto agli occhi di tutto il mondo. La ricognizione è possibile con ICMP e questo è generalmente il motivo addotto per il blocco. È possibile utilizzare i ping per determinare se un host è effettivamente attivo, o il tempo scaduto (come parte di un traceroute) per mappare le architetture di rete, oppure Rory proibisce un reindirizzamento (tipo 5 codice 0) per modificare il percorso predefinito di un host.

Detto questo, il mio consiglio è, come sempre, di adottare un approccio misurato e ponderato alle tue protezioni. Bloccare ICMP nella sua interezza probabilmente non è lidea migliore, ma scegliere e scegliere cosa bloccare e da / verso dove probabilmente otterrai ciò che desideri.

Commenti

  • piccolo dettaglio: sebbene ICMP sia opzionale in IPv4, è richiesto da IPv6 per funzionare normalmente. Il ruolo dellICMP è cambiato molto. Leggi leggere a riguardo: blogs.cisco.com/security/icmp-and-security-in-ipv6
  • @Mike Oh certo, Immagino di non essere stato ‘ chiaro, ma stavo parlando specificamente della v4. IPv6 è una bestia abbastanza diversa che abbiamo davvero bisogno di trattarlo come un protocollo completamente diverso durante la progettazione e la protezione di reti v6.
  • +1 ” .. . o Rory non voglia … ” In realtà ho riso ad alta voce.
  • @tylerl: Ho riso anche io scrivendolo. Certo, avevo bevuto del vino ed era passata unora e mezza dalla mia ora di andare a letto.
  • Source Quench è stato formalmente deprecato ( RFC 6633 ). E da decenni non si vede quasi mai su Internet.

Risposta

ICMP esiste per un motivo, e non tutto questo è ping. È il “meta” protocollo utilizzato per comunicare messaggi di controllo sulla rete stessa. Dai unocchiata a ICMP su Wikipedia per avere unidea migliore di cosa è ea cosa serve.

Altri messaggi ICMP includono anche host di destinazione irraggiungibile, frammentazione richiesta, controllo della congestione, TTL superato, errori del protocollo IP e molti altri.

La rete funzionerà senza ICMP – la resilienza di fronte alla caduta di pacchetti è uno dei punti di forza di IP – ma funzionerà più lentamente, in modo meno efficiente e senza il vantaggio di questi segnali per aiutarti a diagnosticare e risolvere i problemi .

I problemi di sicurezza con ICMP tendono ad essere i più nebulosi problemi di “divulgazione di informazioni”. Ad esempio, se il tuo router invia un messaggio ICMP a qualcuno, allora quel qualcuno sa che hai un router. Forse lattaccante ti conosce avere un router è qualcosa di cui “sei preoccupato, o più probabilmente non lo è”. Ma la ricerca sulla sicurezza tende a sbagliare dalla parte del silenzio per essere al sicuro, per ogni evenienza.

Occasionalmente cè una vulnerabilità in stile “ping of death” legata allICMP in un sistema operativo. Attualmente non ne esistono in nessun sistema operativo mainstream. Ma ancora una volta, i sostenitori della sicurezza sbagliano sul lato della cautela, per ogni evenienza.

Commenti

  • Tu ‘ è sbagliato, ma sono daccordo con te che dici che gli utenti / amministratori regolari non dovrebbero bloccare ICMP. Esistono più problemi di sicurezza critici con ICMP. Il problema principale è avere un feedback a livello di controllo (ttl-superato) che non viene inviato solo dalla destinazione, ma anche da hop intermedi e può essere utilizzato per il fingerprinting del dispositivo in base alle caratteristiche (TTL iniziale, flag IP e soprattutto IP ID) del messaggio ICMP. Inoltre, i messaggi ICMP possono anche essere un feedback per lattraversamento del firewall e, combinati con i firewall TCP per il controllo delle finestre, è possibile eseguire attacchi di inferenza del numero di sequenza.

Risposta

Ad essere onesti, è intelligente filtrare alcuni ICMP in uscita sia a livello di router che a livello di firewall software come ulteriore livello di sicurezza.

Non è pertinente fermare un DoS o DDoS, ma i malintenzionati usano ancora ICMP per cercare di recuperare quante più informazioni possibili su una rete prima di tentare di violarla.

Non sto dicendo che usano SOLO ICMP, ma questo è uno dei pochi tipi di pacchetti che usano e, a seconda che tu abbia i cancelli aperti, possono ottenere molti dettagli di informazioni in pochissimo tempo.

Dedica un po di tempo a google e cerca informazioni su come NMAP e un pochi altri programmi utilizzano ICMP come una delle risorse per raccogliere informazioni, quindi basano i filtri su ciò che ritieni sia necessario per proteggerti e la tua rete.

Se possibile, imposta una rete di test interna (personalmente ho acquistato un router wifi secondario uno economico e ho un PC secondario come firewall per testare tutti i miei router / ipchains / firewall software impostazioni prima di impiegarle nella mia rete principale per la mia famiglia e per qualsiasi cliente che mi assume per proteggere le loro reti.

Incoraggio vivamente le persone a provare a fare qualche ricerca sulla scansione delle porte e su come violare i firewall sul loro rete in modo che possano proteggere meglio se stessi e qualsiasi famiglia che stanno aiutando.

Ecco un paio di risorse che ho utilizzato e indirizzato agli amici in precedenza. Sans Information Security Come viene utilizzato lICMP per la ricognizione

E anche

Attacchi ICMP allInfoSec Institute

Alcuni attacchi non sono più praticabili ma ci sono forme più recenti di Puffo che funzionano ancora a causa di come il programmatore è stato in grado di ricodificare lattacco originale e cambia il modo in cui funziona e utilizza le risorse.

Scava in giro e Google è tuo amico insieme a Stack Exchange e anche il motore di ricerca duckduckgo è meraviglioso per le risorse che Google potrebbe filtrare, fai solo attenzione e usa il tuo ingegno!

Sono un tecnico dei computer da 22 anni e uno specialista della sicurezza di rete da 10. Attualmente sono in scuola per il mio ECH e il mio CPTS e sto guardando i corsi sulla sicurezza offensiva quando li finisco.

Spero che questo aiuti e altri trovino queste informazioni utili mentre ripristino i backup che ho fatto su questo sistema e trovo i miei altri collegamenti e risorse su questo argomento aggiornerò questa risposta.

Risposta

Bloccare ICMP non solo è inutile, ma nella maggior parte dei casi è anche dannoso. Ci sono diversi motivi per cui non dovresti bloccare ICMP se non sei assolutamente sicuro di cosa stai facendo e specialmente perché lo stai facendo. Sì, il ping icmp può aiutare gli altri a “profilare” la tua rete. Ma siamo onesti, se hai un servizio tcp aperto, sarai visto. Se lasci cadere solo i pacchetti, sarai visto. Se rispondi in modo sbagliato sarai visto.Quindi, se credi alla teoria che devi nascondere i nostri server importanti in rete perché li rende più sicuri, allora quando blocchi il tuo icmp è più possibile che il tuo host sia un bersaglio ancora più luminoso. Ci sono solo un sacco di modi per farlo in modo sbagliato in modo da interrompere la scoperta del percorso mtu, il controllo della congestione ecc. E persino fare in modo che il tuo server si distingua dalla massa. Quindi nella cella del dado, non bloccare il tuo icmp se non hai davvero una buona ragione per farlo e poi fallo con attenzione e leggi le specifiche del protocollo icmp in modo da capire cosa e perché stai facendo quello che stai. Sì, può essere una buona idea bloccare il reindirizzamento icmp ai margini della rete se non sei sicuro di avere vecchi kernel. Ma unaltra mano è semplicemente meglio aggiornare i tuoi server e altri host (risolvere problemi reali) piuttosto che nasconderli sotto il tappeto dove qualcuno troverà comunque i tuoi bug.

Risposta

Come puoi vedere dalla struttura del protocollo, tutto dipende dallarea in cui viene utilizzato e poiché i firewall sono in grado di agire sui parametri di tipo e codice, si può decidere cosa passare attraverso il firewall e cosa no. Chiaramente, se il firewall riceve la richiesta Echo ICMP e non hai problemi a fargli sapere se lhost di destinazione è attivo o meno, il firewall deve anche essere in grado di far passare una risposta Echo. Ma attenzione: i pacchetti ICMP devono essere sottoposti a DPI, cioè devono essere coerenti con le specifiche del pacchetto: Se un pacchetto ICMP è passato attraverso il firewall in entrata / uscita e cera malware su uno o più host allinterno della rete, quegli host potrebbero acquisire comandi da un server C & C ed esfiltrare informazioni a quel server. In generale, non credo sia saggio usarlo sui router di confine, ma per la diagnostica di rete interna sì.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *