Alerta de Seguridad
powered_by.png, 1 kB

Que es un Stateful Firewall PDF Imprimir E-mail
ImageUn Stateful Firewall es un firewall que mantiene un seguimiento del estado de las conexiones de red (como los paquetes TCP) que pasan a través de él. El firewall está programado para conocer cuales paquetes legítimos pertenecen a los diferentes tipos de conexiones. Solo los paquetes que concuerdan con un estado de conexión conocido estarán permitidos de pasar a través del firewall; los otros serán rechazados.

Cuando recién se crearon los firewalls, estos operaban a nivel de Aplicación (capa 7 del modelo OSI) pero esto requería demasiada velocidad del CPU. Los filtros de paquetes operan en la capa de Red (capa 3) y funcionan más eficientemente porque ellos solamente miran en la cabecera del paquete. Sin embargo, los filtros de paquetes puros están sujetos a “spoofing attacks” y a otros “exploits”

Cómo trabaja
Un stateful firewall está habilitado para mantener en memoria atributos significativos de cada conexión, desde el inicio hasta el final. Estos atributos, los cuales son conocidos colectivamente como el estado de la conexión, pueden incluir detalles tales como las direcciones IP y los puertos involucrados en la conexión y los números de secuencia de los paquetes que atraviesan la conexión. El chequeo más exhaustivo y que demanda mayor uso de CPU se ejecuta en el momento en que se establece la conexión. Todos los paquetes de esa sesión, después de establecida la conexión, son procesados rápidamente porque es simple y rápido determinar si pertenecen a una sesión existente. Una vez que la sesión ha terminado, su entrada en la tabla de estado es descartada.

El stateful firewall depende de la famosa comunicación de tres-vías del protocolo TCP. Cuando un cliente inicia una NUEVA conexión, éste envía un paquete con la definición de bit SYN en el “packet-header”. Todos los paquetes con la definición de bit SYN son considerados por el firewall como NUEVAS conexiones. Si el servicio por el cual el cliente a solicitado está disponible en el servidor, el servicio responderá al paquete SYN con un paquete en el cual se establecen los bits SYN y ACK. El cliente entonces responderá con un paquete en el cual solamente el bit ACK es establecido, y la conexión entrará en el estado ESTABLISHED.

Por ejemplo, el firewall de Windows XP (SP-2) permitirá la salida de todos los paquetes salientes, pero permitirá solamente la entrada de paquetes solo si son parte de una conexión ESTABLISHED, asegurándose de esta forma de que los hackers no puedan iniciar una conexión “no solicitada” con la máquina protegida.

A fin de prevenir que la tabla de estados se “llene”, las sesiones entrarán en “time-out” si es que en un determinado período de tiempo no pasa tráfico. Estas conexiones viejas son removidas de la tabla de estados. Por esta razón muchas aplicaciones envían mensajes “keep alive” periódicamente para que el firewall no las elimine durante los períodos de inactividad. Es importante notar que el ataque DoS más común en Internet es el “SYN flood”, que ocurre cuando un usuario malicioso intencionalmente envía grandes cantidades de paquetes SYN a un servidor con la finalidad de sobrecargar su tabla de estado, bloqueando de esta forma al servidor e impidiendo que acepte otras conexiones.

Filtros a nivel de aplicación
Actualmente, los firewalls están usando nuevamente filtros a nivel de aplicación llamados Proxy, o Proxy de nivel de Aplicación, ya que las máquinas con modernas velocidades de CPU son capaces de hacer inspecciones profundas en tiempos razonables. Estos Proxy pueden leer la parte de datos de cada paquete con la finalidad de hacer decisiones inteligentes sobre la conexión. Por ejemplo, HTTP puede ser usado para esconder protocolos de distribución de archivos como IRC o P2P. Los firewalls tradicionales no pueden detectar esta actividad mientras que un firewall de nivel de Aplicación puede detectar y bloquear selectivamente conexiones HTTP en base a su contenido.
 
Los firewalls inspeccionan cada paquete de la red y deciden si deben ser permitidos de llegar a su destino o si deben ser rechazados. Las formas comunes de filtrar paquetes son en base a las direcciones origen/destino o en base al puerto origen/destino.

Pero en la mayoría de los casos esta información no es suficiente. El administrador del firewall puede desear permitir el paso de los paquetes en base al contexto de la conexión, y no solo en base a la características individuales del paquete. Por ejemplo, un paquete que pertenece a una conexión existente, dirigida al puerto 22 (puerto Secure Shell) debería ser permitida que pase el firewall, pero un paquete que no pertenece a una conexión existente debe ser rechazado.

Esto era un problema con los firewalls tradicionales ( firewalls no Stateful), ya que el firewall no tenía forma de saber cuáles paquetes pertenecían a conexiones existentes y cuales no. Los Stateful Firewalls resuelven este problema monitoreando las conexiones de red y haciendo una concordancia de paquetes que inspeccionan en conexiones nuevas y existentes. Por lo tanto, ofrecen un control más granular sobre el tráfico de la red.

Copyright 2000 - 2005 Rediamerica S.A. Todos los derechos reservados.
Guayaquil - Ecuador