¿Qué es un firewall con estado?

Algunos protocolos de red tienen un estado y otros no. Un firewall con estado rastreará las conexiones para asegurarse de que la secuencia de eventos en una conexión coincida con lo que se espera que suceda.

El ejemplo más simple de esto sería una solicitud de ping ICMP y una respuesta de ping ICMP.

Las respuestas de ping siempre se envían en respuesta a las solicitudes de ping. Entonces, cuando una solicitud de ping atraviesa un firewall, se crea una entrada en la tabla de estado. Cuando vuelve la respuesta, se corresponde con la solicitud saliente y se permite volver a través del firewall.

Cualquier respuesta que no tenga una solicitud coincidente no es válida y debe descartarse.

Una sesión TCP es un asunto más complejo. Una sesión TCP se configura con tres paquetes, denominados apretón de manos, que definen el origen y el destino y el puerto de origen y el puerto de destino. El originador envía un paquete SYN, un paquete SYN-ACK viene en respuesta, y luego se vuelve a enviar un paquete ACK (más datos potencialmente). Cada uno de los paquetes está marcado con un número de secuencia, y cada paquete posterior a los primeros estados a qué paquete está respondiendo.

Al final de una sesión, se envía una secuencia FIN o un RST en caso de errores.

Un firewall con estado rastrea cada uno de estos elementos para asegurarse de que la sesión TCP sea válida.

Si algo de esto no sucede, la sesión TCP no es válida y debe descartarse, independientemente de si hay reglas que permitan el acceso. Si los paquetes vienen con números de secuencia que no coinciden, o los paquetes tienen ACK sin ver primero un SYN, o los paquetes que vienen después de la secuencia FIN-ACK o el paquete RST. Todo debe dejarse caer.

Entonces esta es otra capa de protección más allá de las reglas. Con un firewall con estado, estamos diciendo “Cualquier cosa puede llegar a este servidor en el puerto tcp / 80, * siempre * que cada paquete se ajuste al protocolo TCP”. Un firewall sin estado permitiría la entrada de cualquier paquete, independientemente de su conformidad.

Un cortafuegos sin estado (filtro de paquetes simple) es un guardia del dormitorio de la universidad que dice “Lo siento, amigo, solo dejo entrar a los estudiantes que usan gorras de béisbol azules. No presto atención a quién se queda o se va. Solo busco el gorra azul.”

Un cortafuegos con estado (consciente de la sesión) es un guardia de dormitorio de la universidad que ve a un repartidor de pizzas entrando al edificio y dice “Está bien, amigo, te dejaré entrar y te vigilaré para ver si / cuando salgas por esto o otra salida. “O, si lo prefiere en la dirección opuesta,” Está bien, estudiante, me doy cuenta de que está saliendo del edificio para ir a cenar, y lo vigilaré para ver si regresa por esta u otra entrada..

El firewall con estado puede monitorear el estado operativo y las características de las conexiones de red de extremo a extremo. Este firewall está programado para distinguir entre paquetes legítimos para diferentes tipos de conexión. En términos técnicos, el firewall con estado puede indicar en qué etapa se encuentra una conexión TCP abierta, abierta enviada, sincronizada, confirmación de sincronización o establecida. También puede decir si la MTU ha cambiado, si los paquetes se han fragmentado, etc.

El firewall con estado es un tipo de firewall que intenta rastrear el estado de las conexiones de red al filtrar paquetes. Las capacidades del firewall con estado son algo así como un cruce entre las funciones de un filtro de paquetes y la inteligencia de protocolo de nivel de aplicación adicional de un proxy. Debido a este conocimiento adicional del protocolo, se omiten muchos de los problemas encontrados al intentar configurar un firewall de filtrado de paquetes para protocolos que se comportan de manera no estándar (como se menciona en el Capítulo 2, “Filtrado de paquetes”). Dispositivo de firewall virtual – Cyberoam