¿Debes bloquear el tráfico UNTRACKED en iptables? Guía para proteger tu red

Artículos Guías Manuales Sistemas Linux Windows Binario 0

El estado UNTRACKED en iptables representa paquetes que no están siendo rastreados por el sistema de seguimiento de conexiones (conntrack). Esto puede ocurrir intencionalmente, por ejemplo, cuando se configura explícitamente el sistema para no rastrear ciertos paquetes, o por limitaciones del sistema.

¿Qué significa el estado UNTRACKED?

  • No rastreados intencionadamente: En algunas configuraciones avanzadas, se decide no rastrear ciertos paquetes para evitar sobrecargar el sistema de seguimiento de conexiones. Esto es común en escenarios donde el tráfico es muy alto, como en proxys o servidores de balanceo de carga.
  • Excepciones al seguimiento normal: Los paquetes UNTRACKED no tienen un estado de conexión asociado y no están sujetos a las mismas verificaciones de seguridad que otros estados (NEW, ESTABLISHED, etc.).

¿Es recomendable cortar las conexiones UNTRACKED?

Dependerá del caso de uso. Aquí se presentan los escenarios más comunes:

1. Redes estándar y configuraciones generales

En una red estándar, el tráfico UNTRACKED puede ser sospechoso, ya que, en teoría, todo el tráfico debería estar dentro de un flujo rastreado (por ejemplo, conexiones nuevas o establecidas). Si no tienes una razón específica para permitirlo, es recomendable bloquear este tráfico.

Regla para bloquear paquetes UNTRACKED:

iptables -A INPUT -m conntrack --ctstate UNTRACKED -j DROP

2. Configuraciones avanzadas

En redes de alto rendimiento o configuraciones avanzadas, es posible que se configure explícitamente que ciertos paquetes no sean rastreados para mejorar el rendimiento. En estos casos:

  • No bloquees indiscriminadamente paquetes UNTRACKED, ya que podrías interrumpir servicios legítimos.
  • Permite únicamente paquetes UNTRACKED específicos, como los relacionados con tráfico UDP de alto volumen (DNS, VoIP).

Ejemplo de excepción:

iptables -A INPUT -p udp --dport 53 -m conntrack --ctstate UNTRACKED -j ACCEPT

3. Análisis de tráfico sospechoso

El estado UNTRACKED también podría indicar un posible intento de eludir las políticas de firewall. Por ejemplo, si un atacante usa herramientas o configuraciones que evitan el rastreo de conexiones, este tráfico debería bloquearse.

Buenas prácticas al manejar UNTRACKED

  1. Audita el tráfico UNTRACKED antes de tomar decisiones.
    Utiliza herramientas como tcpdump o revisa los logs de iptables para identificar qué tipo de paquetes están marcados como UNTRACKED. Esto ayuda a evitar bloqueos no deseados.
  2. Bloquea por defecto, pero crea excepciones específicas.
    Si no necesitas explícitamente tráfico UNTRACKED, bloquea todo este tráfico.
  3. Monitorea el rendimiento.
    En sistemas que permiten tráfico UNTRACKED por razones de rendimiento, monitorea que no se convierta en un vector de ataque.

Conclusión

En la mayoría de los entornos, el tráfico UNTRACKED no es común y debe ser tratado como potencialmente sospechoso. Si no tienes razones claras para permitir este tipo de tráfico, bloquéalo por defecto. Sin embargo, en escenarios avanzados, como servidores de alto rendimiento, puedes permitirlo siempre que esté controlado y limitado a los servicios necesarios.