¿Qué tan práctico es la falsificación de ICMP?
escenario 1: en un entorno NAT, ¿cómo NAT realiza un seguimiento de las sesiones ICMP (no técnicamente sesiones ya que no está orientado a la conexión?) Para la respuesta ECHO / ECHO Windows usa el mismo identificador (0x1) y número de secuencia con 256 incrementos para cada paquete . Si dos hosts hacen ping al mismo servidor externo, ¿cómo distingue NAT los paquetes ICMP entrantes? Si la red interna no filtra la dirección de origen, ¿qué tan difícil es falsificar una respuesta ECHO? caso de uso: ping icmp utilizado para la supervisión, un equilibrador de carga puede tomar acciones incorrectas / innecesarias al recibir respuestas ICMP falsificadas (destino inalcanzable, alta latencia, etc.)
escenario 2: Algún dispositivo IPS, digamos el GFW, inspeccionando paquetes en la ruta de tránsito. Cuán práctico es falsificar mensajes de error ICMP que matan una conexión con sigilo. En lugar de enviar TCP RST, envía el puerto de destino inalcanzable / el paquete es demasiado grande (esto puede ser interesante :)) con una IP de origen falsificada (la IP legítima del otro lado o algunos saltos más adelante). Mantener el seguimiento del encabezado IP original y los primeros 64 bytes puede ser costoso, pero con la potencia informática disponible en la actualidad, ¿es factible?
Básicamente, ya sea desde dentro o desde fuera de NAT, ¿qué tan probable es que ICMP falsificado cause daños / confusiones? No estoy hablando de la inundación ICMP.
Por cierto, ¿NAT puede manejar cualquier protocolo IP que no sea TCP / UDP? En realidad, no estoy exactamente seguro de cómo maneja los diferentes tipos de ICMP.