¿Es una mala idea que un firewall bloquee el ICMP?

91

Esta pregunta se inspiró en esta respuesta que establece en parte:

  

El archivo de manifiesto genérico del cortafuegos finaliza al eliminar todo lo que no permitía (además de ICMP. No desactive ICMP).

Pero, ¿es realmente una buena práctica que un firewall permita ICMP? ¿Cuáles son las implicaciones de seguridad y hay casos en los que ICMP debería estar desactivado?

    
pregunta Justin Ethier 17.10.2012 - 03:57
fuente

4 respuestas

108

En comparación con otros protocolos IP, ICMP es bastante pequeño, pero tiene una gran cantidad de funciones dispares. En su núcleo, ICMP se diseñó como el mecanismo de depuración, solución de problemas e informe de errores para IP. Esto hace que sea increíblemente valioso, por lo que se necesita pensar mucho para apagarlo. Sería un poco como agregar >/dev/null 2>&1 al final de todas sus entradas cron.

La mayoría de las veces, cuando hablo con personas sobre el bloqueo de ICMP, realmente están hablando de ping y traceroute. Esto se traduce en 3 tipos

  • 0 - Respuesta de eco (respuesta de ping)
  • 8 - Solicitud de eco (solicitud de ping)
  • 11 - Tiempo excedido

Eso es 3 tipos de 16. Veamos algunos de los otros tipos de ICMP que están disponibles.

  • 4 - Source Quench (enviado por un enrutador para pedirle a un host que ralentice sus transmisiones)
  • 3 - Destino inalcanzable (consta de 16 tipos diferentes de mensajes que van desde informar un problema de fragmentación hasta que un firewall informa que un puerto está cerrado)

Ambos pueden ser invaluables para que los hosts no maliciosos funcionen correctamente en una red. De hecho, hay dos casos muy buenos (probablemente más, pero estos son los más obvios para mí) en los que no desea restringir ICMP.

  • Detección de MTU de ruta: usamos una combinación de la bandera "No fragmentar" y el código 4 de tipo 3 (Destino inalcanzable - Se requiere fragmentación y la bandera de DF establecida) para determinar la MTU más pequeña en la ruta entre los hosts. De esta manera evitamos la fragmentación durante la transmisión.
  • Active Directory requiere que los clientes hagan ping a los controladores de dominio para bajar los GPO. Usan ping para determinar el controlador "más cercano" y si ninguno responde, se supone que ninguno está lo suficientemente cerca. Así que la actualización de la política no ocurre.

Eso no quiere decir que debamos dejar todo abierto para que todo el mundo lo vea. El reconocimiento es posible con ICMP y esa es generalmente la razón dada para el bloqueo. Se pueden usar pings para determinar si un host está realmente activado, Time Exceeded (como parte de un traceroute) para mapear arquitecturas de red, o Rory prohibir un Redirect (tipo 5 código 0) para cambiar la ruta predeterminada de un host.

Dado todo eso, mi consejo es, como siempre, adoptar un enfoque medido y reflexivo con respecto a sus protecciones. El bloqueo de ICMP en su totalidad probablemente no sea la mejor idea, pero elegir y seleccionar qué bloquea y desde / hacia dónde probablemente obtendrá lo que desea.

    
respondido por el Scott Pack 17.10.2012 - 05:08
fuente
29

ICMP existe por una razón, y no toda esa razón es ping . Es el protocolo "meta" que se utiliza para comunicar mensajes de control sobre la red en sí. Echa un vistazo a ICMP en Wikipedia para tener una mejor idea de qué es y para qué sirve.

Otros mensajes ICMP también incluyen host de destino inalcanzable, fragmentación requerida, control de congestión, TTL excedido, errores de protocolo IP y muchos otros.

La red funcionará sin ICMP: la resistencia frente a las caídas de paquetes es una de las fortalezas principales de IP, pero funcionará de manera más lenta, menos eficiente y sin el beneficio de estas señales para ayudarlo a diagnosticar y resolver problemas .

Los problemas de seguridad con ICMP tienden a ser los problemas más nebulosos de "divulgación de información". P.ej. Si su enrutador envía un mensaje ICMP a alguien, esa persona sabe que usted tiene un enrutador. Tal vez el atacante que sabe que tiene un enrutador es algo que le preocupa, o más probablemente no lo es. Pero la investigación de seguridad tiende a errar del lado del silencio para estar seguro, por si acaso.

Ocasionalmente, existe una vulnerabilidad de estilo "ping of death" relacionada con ICMP en un sistema operativo. Actualmente ninguno existe en ningún sistema operativo convencional. Pero una vez más, los defensores de la seguridad se equivocan por el lado de la precaución, por si acaso.

    
respondido por el tylerl 17.10.2012 - 04:52
fuente
4

Para ser honesto, es inteligente filtrar algunos ICMP salientes tanto a nivel de enrutador como a nivel de firewall de software como una capa adicional de seguridad.

No puede ser pertinente detener un DoS o DDoS, pero las personas malintencionadas siguen usando ICMP para intentar recuperar la mayor cantidad de información posible sobre una red antes de que intenten violarla.

No estoy diciendo que SOLO utilicen ICMP, pero ese es uno de los pocos tipos de paquetes que utilizan y, dependiendo de si tiene las compuertas abiertas, pueden obtener un gran detalle de información en muy poco tiempo.

Tómese un tiempo para buscar en Google y obtener información sobre cómo NMAP y algunos otros programas utilizan ICMP como uno de los recursos para recopilar información y luego basan sus filtros en lo que consideran necesario para protegerse y proteger su red.

Si es posible configurar una red de prueba interna (yo compré personalmente un enrutador wifi secundario y tengo una PC secundaria como firewall para probar todas las configuraciones de mi enrutador / ipchains / software de firewalls antes de utilizarlas en mi Red principal para mi hogar y cualquier cliente que me contrate para proteger sus redes.

Aliento a las personas a que intenten e investiguen un poco sobre el escaneo de puertos y sobre cómo atacar los cortafuegos en su propia red para poder protegerse mejor a sí mismos y a cualquier familia a la que ayuden.

Aquí hay un par de recursos que he usado y he recomendado a mis amigos antes. Sans Information Security Cómo se usa ICMP para el reconocimiento

Y también

InfoSec Institute ICMP Attacks

Algunos de los ataques ya no son viables, pero hay formas más nuevas de pitufos que funcionan aún debido a cómo el programador pudo volver a codificar el ataque original y cómo funciona y usa los recursos.

¡Investigue y google es su amigo junto con Stack Exchange y también el motor de búsqueda duckduckgo es maravilloso para los recursos que google podría filtrar, solo sea cauteloso y use su ingenio!

Hace 22 años que soy técnico de computadoras y especialista en seguridad de redes durante 10 años. Actualmente estoy en chool para mi ECH y mi CPTS y estoy viendo cursos de seguridad ofensiva cuando termine estos.

Espero que esto ayude y que otros encuentren útil esta información mientras restauro las copias de seguridad que realicé en este sistema y encuentro otros enlaces y recursos sobre este tema, actualizaré esta respuesta.

    
respondido por el brandizzle 17.07.2016 - 07:05
fuente
1

El bloqueo de ICMP no solo es inútil sino que, en la mayoría de los casos, también es perjudicial. Hay varias razones por las que no debe bloquear ICMP si no está absolutamente seguro de lo que está haciendo y, en especial, de lo que está haciendo. Sí, icmp ping puede ayudar a otros a "perfilar" su red. Pero seamos honestos, si tiene algún servicio de TCP abierto, lo veremos. Si solo dejas caer los paquetes serás visto. Si respondes mal, serás visto. Por lo tanto, si cree que debe ocultar nuestros servidores importantes en la red porque los hace más seguros, cuando bloquee su icmp es más posible que su host sea un objetivo aún más brillante. Solo hay un montón de formas de hacerlo mal, de modo que pueda romper el descubrimiento de la ruta de MTU, el control de congestión, etc. e incluso hacer que su servidor destaque de la masa. Entonces, en la celda de la tuerca, no bloquee su icmp si no tiene una buena razón para hacerlo y luego hágalo con cuidado y lea las especificaciones del protocolo icmp para entender qué y por qué está haciendo lo que está haciendo. Sí, puede ser una buena idea bloquear el redireccionamiento de icmp en el borde de su red si no está seguro de tener núcleos antiguos. Pero por otro lado, es mejor actualizar sus servidores y otros hosts (solucionar problemas reales) que esconderlos debajo de la alfombra donde alguien encontrará sus errores de todos modos.

    
respondido por el Tapio Haapala 16.08.2016 - 23:44
fuente

Lea otras preguntas en las etiquetas