Filtrado multicapa
Tres tipos básicos de cortafuegos son los existentes, basados en el nivel en que el cortafuegos lleva a cabo las acciones de filtrado. En los primeros se filtraba en un sólo nivel, normalmente a nivel de paquete. Los más modernos usan filtrado multicapa para proporcionar la mejor seguridad. A un cortafuegos multicapa suele llamarsele cortafuegos Híbrido. Un cortafuegos multicapa lleva a cabo dos o más de los siguientes niveles de filtrado:
- Filtrado a nivel de red.(paquetes)
- Filtrado a nivel de transporte.(circuito)
- Filtrado a nivel de capa de aplicación.
Estas tres capas de filtrado se relacionan con el modelo de red OSI.
El modelo OSI fue desarrollado por La Organización Internacional de Estandarización (ISO) para proporcionar un modelo multicapa que diseñadores/desarrolladores de software y hardware de redes pudieran utilizar para asegurar mejor la compatibilidad entre sus productos.
Filtrado a nivel de red(Paquetes)
Los primeros cortafuegos fueron cortafuegos de filtrado de red, trabajaban a nivel de red del modelo OSI. Examinan las cabeceras de los paquetes que contienen direcciones IP y opciones de paquete y bloquean o permiten el trafico a través del cortafuegos basado en esta información.
Un cortafuegos de filtrado a nivel de red puede utilizar alguna de las siguientes tecnologías:
- Filtrado estático de paquetes: reglas establecidas manualmente y los puertos permanecen abiertos o cerrados hasta que se cambie manualmente.
- Filtrado dinámico de paquetes: más inteligente que el anterior, en que las reglas se cambian dinámicamente dependiendo de sucesos o condiciones, y los puertos se mantienen abiertos mientras es necesario y entonces se cierran.
- Filtrado a nivel de datos o estado: se usa una tabla para mantener los estados de conexión de sesiones tanto como el orden en que los paquetes deben pasar en una secuencia autorizada por las políticas de filtrado.
Stateful Inspection o Inspección de paquetes a nivel de datos es una tecnología por la que se realiza un análisis profundo de la información contenida en los paquetes(por encima de la capa de aplicación) y consecuentemente las decisiones de filtrado se basan en lo que el cortafuegos ha aprendido de los paquetes examinados previamente.
Filtrado de circuito
Un cortafuegos de este tipo, también denominado pasarela a nivel de circuito, trabaja en las capas de transporte y sesión del modelo OSI. Puede examinar estrechamente la información TCP que se está enviando entre equipos para verificar que la solicitud de sesión es legítima.
Los filtros de circuito operan en una capa alta del modelo, la capa de transporte (capa host a host en el modelo DOD). Restringen el acceso a la base de los equipos(no usuarios) mediante el proceso de la información hallada en la cabecera del paquete TCP y UDP. Esto permite a los administradores crear filtros que, por ejemplo, prohibirían a cualquiera usar el equipo A y desde FTP acceder al equipo B.
Cuando los filtros de circuito se utilizan, el control de acceso se basa en los datos TCP o datagramas UDP. Pueden actuar según las banderas de estado TCP o UDP y la secuencia de la información, como añadido a las direcciones de origen y destino y número de puertos. Este filtrado permite a los administradores inspeccionar las sesiones, más que paquetes. Una sesión a veces se cree como una conexión, pero realmente una sesión puede realizarse desde más de una conexión. Las sesiones se establecen sólo en respuesta a una solicitud de usuario, que se agrega a la seguridad.
Este filtrado no restringe el acceso basado en la información de usuario; tampoco interpretar el sentido de los paquetes. Es decir, no puede distinguirse entre un comando GET y un comando PUT envíados por una aplicación. Hacer esto significa utilizar filtrado de aplicación.
Filtrado de capa de aplicación
El filtrado de aplicación se lleva a cabo por pasarelas de aplicación, también denominadas proxys. Estos cortafuegos operan en la capa de aplicación del modelo OSI y pueden examinar el contenido de los datos.
Hay veces en que la mejor táctica es filtrar paquetes basada en la información contenida en éllos mismos. Los dos tipos de filtrado anteriores no pueden usar esos contenidos de los paquetes para tomar decisiones de filtrado, pero esto puede realizarse mediante filtrado de aplicación. Un filtro de aplicación opera en la capa superior del modelo de red, la capa de aplicación. Este filtrado puede usar la información contenida en la cabecera del paquete pero también es capaz de permitir o rechazar paquetes en base a los contenidos de los datos y a la información de usuario.
Los administradores pueden usar este filtrado para controlar el acceso basado en la identidad del usuario y/o en la tarea concreta que el usuario está intentando llevar a cabo. Con filtros de aplicación, los criterios pueden establecerse basados en comandos emitidos por las aplicaciones. Esto significa que, por ejemplo, el administrador podría restringir a un usuario en concreto la descarga de archivos de un equipo específico, usando FTP. Al mismo tiempo podría permitir que el usuario cargase archivos vía FTP en el mismo equipo. Esto es posible porque los diferentes comandos son emitidos dependiendo de si el usuario está recuperando archivos desde el servidor o depositándolos allí.
Las pasarelas de aplicación están consideradas por muchos expertos en cortafuegos como la más segura de las tecnologías de filtrado. Debido principalmente a que los criterios que estos cortafuegos utilizan para filtrado abarcan mucho más que otros métodos. A veces los hackers escriben programas maliciosos que usan direcciones de puertos de una aplicación autorizada, como el puerto 53 que es el DNS. Un filtrado de paquete o circuito sería incapaz de reconocer que el paquete no es un paquete de solicitud o respuesta DNS válido, y permitiría su paso. Un filtrado de aplicación, sin embargo, es capaz de examinar el contenido del paquete y determinar que no debe ser permitido su paso.
Hay inconvenientes en este tipo de filtrado. El más grande es que deben tener una pasarela de aplicación separada para cada servicio de internet que el cortafuegos debe soportar. Esto supone un mayor trabajo de configuración; sin embargo, esta debilidad es también un punto fuerte que añade a la seguridad del cortafuegos. Como una pasarela para cada servicio debe ser habilitada explícitamente, un administrador no podrá casualmente permitir servicios que representen una amenaza para la red. El filtrado de aplicación es el más sofisticado nivel de filtrado llevado a cabo por el servicio de cortafuegos y es especialmente útil en proteger la red frente a tipos específicos de ataques como comandos SMTP maliciosos o intentos de penetración a los servidores locales DNS.
Otro inconveniente del filtrado de aplicación es el rendimiento o su carencia. Este filtrado es un proceso lento ya que los datos del interior de los paquetes deben examinarse. Consecuentemente, no parece probable que desearemos emplazar un cortafuegos con filtrado de aplicación en la periferia de la red cuando se tiene una conexión de entrada muy rápida. En su lugar, un simple y rápido cortafuegos de filtrado de paquetes sería mejor y el filtrado de aplicación puede efectuarse más lejos de allí y más cerca de la aplicación misma.