¿Es una mala idea que un firewall bloquee ICMP?

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

El archivo de manifiesto del cortafuegos genérico finaliza eliminando todo lo que no permití de otra manera (además de ICMP. No apague ICMP).

Pero, ¿es realmente una buena práctica que un firewall permita ICMP? ¿Cuáles son las implicaciones de seguridad? ¿Hay casos en los que ICMP deba desactivarse?

Comentarios

  • I ‘ Estoy seguro de que hay muchas otras razones, pero por una: hace que la administración remota sea una pesadilla.
  • Es ‘ una de esas » A menos que ‘ seas un dios de las redes y realmente sepas lo que ‘ estás haciendo, no ‘ no se meta con él » tipo de cosas.
  • IMO, esta regla se aplica a todo el firewall, no solo a ICMP .
  • Consulte también: ¡Deje de romper Internet!
  • RFC 4890: ietf.org/rfc/rfc4890.txt y este borrador de RFC: datatracker.ietf.org/doc/draft-ietf-opsec-icmp- filtering / … … ambos proporcionan consejos detallados sobre cómo filtrar paquetes ICMPv4 e ICMPv6.

Respuesta

Comparado con otros protocolos IP, ICMP es bastante pequeño, pero tiene una gran cantidad de funciones dispares. En esencia, ICMP fue diseñado como el mecanismo de depuración, resolución de problemas y notificación de errores para IP. Esto lo hace increíblemente valioso, por lo que es necesario pensar mucho para cerrarlo. 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 la gente sobre el bloqueo de ICMP, realmente 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 un par 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 un firewall informar que un puerto está cerrado)

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

  • Ruta Descubrimiento de MTU: utilizamos una combinación del indicador Don «t Fragment y el código 4 de tipo 3 (Destino inalcanzable: se requiere fragmentación y el indicador DF) 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 poder desplegar los GPO. Usan ping para determinar el controlador «más cercano» y si ninguno responde, se supone que ninguno está lo suficientemente cerca. De modo 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. Uno puede usar pings para determinar si un host está realmente encendido, o Time Exceeded (como parte de un traceroute) para trazar arquitecturas de red, o Rory prohíbe un Redirect (tipo 5 código 0) para cambiar la ruta predeterminada de un host.

Teniendo en cuenta todo eso, mi consejo es, como siempre, que adoptes un enfoque mesurado y reflexivo sobre tus protecciones. Bloquear ICMP en su totalidad probablemente no sea la mejor idea, pero elegir qué bloquea y hacia / desde dónde probablemente obtendrá lo que desea.

Comentarios

  • pequeño detalle: Si bien ICMP es opcional en IPv4, IPv6 lo requiere para operar normalmente. El papel de ICMP ha cambiado mucho. Lectura ligera al respecto: blogs.cisco.com/security/icmp-and-security-in-ipv6
  • @Mike Oh, claro, Supongo que no estaba ‘ t claro, pero estaba hablando específicamente de la v4. IPv6 es una bestia lo suficientemente diferente que realmente necesitamos tratarlo como un protocolo completamente diferente al diseñar y proteger redes v6.
  • +1 » .. . o Rory no lo quiera … » En realidad me reí en voz alta.
  • @tylerl: Me reí al escribirlo también. De acuerdo, había bebido un poco de vino y habían pasado 1,5 horas de la hora de dormir.
  • Source Quench ha quedado formalmente obsoleto ( RFC 6633 ). Y casi nunca se ha visto en Internet durante décadas.

Respuesta

ICMP existe por una razón, y no toda esa razón es ping. Es el «meta» protocolo que se utiliza para comunicar mensajes de control sobre la propia red. Eche 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 la caída de paquetes es una de las fortalezas principales de IP), pero funcionará más lentamente, con menos eficiencia 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». Por ejemplo, si su enrutador envía un mensaje ICMP a alguien, entonces ese alguien sabe que tiene un enrutador. Tal vez el atacante lo conozca tener un enrutador es algo que le preocupa, o más probablemente no. Pero la investigación de seguridad tiende a pecar del lado del silencio simplemente para estar seguro, por si acaso.

Ocasionalmente hay una vulnerabilidad de estilo «ping of death» relacionada con ICMP en un sistema operativo. Actualmente no existe ninguno en ningún sistema operativo convencional. Pero una vez más, los defensores de la seguridad pecan de cautela, por si acaso.

Comentarios

  • Usted ‘ estás equivocado, pero estoy de acuerdo contigo diciendo que los usuarios / administradores habituales no deberían bloquear ICMP. Existen múltiples preocupaciones de seguridad críticas con ICMP. El principal problema es tener una retroalimentación de nivel de control (ttl-excedido) que no solo es enviada por el destino, sino también por saltos intermedios.Puede usarse para la toma de huellas dactilares del dispositivo según las características (TTL inicial, indicadores de IP y, lo que es más importante, IP ID) del mensaje ICMP. Además, los mensajes ICMP también pueden ser una retroalimentación para atravesar el cortafuegos, y combinados con cortafuegos de comprobación de ventanas TCP, puede realizar ataques de inferencia de números de secuencia.

Respuesta

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 es pertinente detener un DoS o DDoS, pero las personas malintencionadas todavía usan ICMP para intentar recuperar la mayor cantidad de información posible sobre una red antes de intentar violarla.

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

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

Si es posible, configure una red de prueba interna (personalmente compré un enrutador wifi secundario barato y tengo una computadora secundaria como firewall para probar todos mis enrutadores / ipchains / firewalls de software configuración antes de emplearlos en mi red principal para mi hogar y cualquier cliente que me contrate para proteger sus redes.

Recomiendo encarecidamente a las personas que intenten investigar un poco sobre el escaneo de puertos y cómo violar los firewalls en sus propia red para que puedan protegerse mejor a sí mismos y a cualquier familia a la que estén ayudando.

Aquí hay un par de recursos que he usado y referido a amigos anteriormente. Sans Information Security Cómo se utiliza ICMP para reconocimiento

Y también

Ataques ICMP de InfoSec Institute

Algunos de los ataques ya no son viables, pero hay formas más nuevas de Smurf que aún funcionan debido a cómo el programador pudo volver a codificar el ataque original y cambia la forma en que funciona y utiliza 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 tenga cuidado y use su ingenio!

He sido técnico de computadoras durante 22 años y especialista en seguridad de redes durante 10. Actualmente estoy en la escuela para mi ECH y mi CPTS y estoy buscando cursos de seguridad ofensiva cuando termine estos.

Espero que esto ayude y que otros encuentren esta información útil mientras restauro las copias de seguridad que hice en este sistema y encuentro mis otros enlaces y recursos sobre este asunto. Actualizaré esta respuesta.

Respuesta

Bloquear ICMP no solo es inútil, sino que en la mayoría de los casos también es dañino. Hay varias razones por las que no debe bloquear ICMP si no está absolutamente seguro de lo que está haciendo y especialmente por qué lo está haciendo. Sí, icmp ping puede ayudar a otros a «perfilar» su red. Pero seamos honestos, si tienes algún servicio tcp abierto, serás visto. Si simplemente suelta paquetes, lo verán. Si responde de manera incorrecta, será visto.Entonces, si cree en la teoría de que debe ocultar nuestros servidores importantes en la red porque los hace más seguros, entonces cuando bloquea su icmp es más posible que su host sea un objetivo aún más brillante. Hay muchas formas de hacerlo mal para romper el descubrimiento de rutas MTU, el control de la congestión, etc. e incluso hacer que su servidor se destaque de la masa. Entonces, en la celda de nuez, 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 que comprenda qué y por qué está haciendo lo que está haciendo. Sí, puede ser una buena idea bloquear la redirección 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.

Respuesta

Como puede ver en la estructura del protocolo, todo depende del área en la que se utilice y desde que los firewalls puede actuar sobre los parámetros de tipo y código, puede decidir qué pasar a través del firewall y qué no. Claramente, si el firewall recibe la solicitud de eco de ICMP y no tiene ningún problema en hacerle saber si el host de destino está activo o no, el firewall también debe poder dejar pasar una respuesta de eco. Pero tenga cuidado: los paquetes ICMP deben estar sujetos a DPI, es decir, deben ser consistentes con las especificaciones del paquete: si un paquete ICMP pasó a través del firewall entrante / saliente y había malware en uno o más hosts dentro de su red, esos hosts podrían adquirir comandos de un servidor C & C y extraer información a ese servidor. En general, no creo que sea prudente usarlo en enrutadores fronterizos, pero para el diagnóstico interno de la red, sí.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *