FIREWALLS - Diseño y Panorámica Actual
La seguridad no fue uno de los principios fundamentales de diseño de las primeras redes y protocolos entre los 60s y 70s, razón por la cual se han desarrollado tecnologías para complementar dichos sistemas y añadirles una capa de seguridad de la que carecían. Una de las más trascendentales han sido los firewalls, con más de 25 años de antigüedad, que han sufrido una evolución increíble en términos de complejidad y efectividad, a tal punto de ser prácticamente imprescindibles para cualquier red informática de la actualidad. Vamos a darle una mirada profunda a sus características y topologías, al tiempo que repasamos algunas recomendaciones de diseño y conocemos los más utilizados actualmente a nivel empresarial.
FIREWALLS
La definición más sencilla para un firewall es que es un dispositivo que filtra el tráfico entre una red protegida (interna) y una red insegura (externa), con el objetivo de proteger la red interna de la gran cantidad de amenazas provenientes de la red externa. Para lograrlo se implementan políticas o reglas que indican qué hacer ante diferentes tipos de tráfico. Debido a que constituye un punto único de falla y un cuello de botella para el tráfico de la red, la teoría ha sugerido que deberían ejecutarse en una máquina dedicada sin tener otros servicios habilitados, esto con el fin de agudizar su desempeño y reducir las posibilidades de compromiso por parte de atacantes (a menor número de servicios habilitados mayor dificultad para atacar el sistema). Sin embargo esta tecnología ha evolucionado hasta alcanzar una integración con otros sistemas generando nuevos conceptos conceptos tales como Deep Packet Inspection y UTM (Unified Threat Management).
Deep Packet Inspection:
Firewalls que se integran con sistemas IDS e IPS para analizar a profundidad el tráfico que lo atraviesa. Dicha integración eleva de forma importante el nivel de seguridad de la solución, al chequear la carga útil (payload) de los paquetes y evaluarla utilizando heurística e identificación de firmas para tomar decisiones con respecto al procesamiento del paquete.
UTM:
Corresponden a la tendencia más seguida en la actualidad y ampliamente difundida en las empresas. Consolidan gran cantidad de servicios de seguridad en una sola máquina, como VPN, IDS, IPS, Mail Gateway, Antivirus, Anti- spam, Web Proxy, NAT, DHCP Server, entre muchos otros. Este tipo de sistemas se ubican en el borde del perímetro para proteger la red interna y brindar servicios tanto al exterior como interior de la red. Ofrece un sin número de ventajas, aunque constituyen un punto único de falla de altísima importancia para la red al reunir tantos servicios en un solo dispositivo.
TIPOS DE FIREWALL
Es importante recalcar que la selección e implementación de un firewall depende completamente de las necesidades de la organización antes que de las características propias del firewall, es decir, no hay un diseño universal que aplique a cualquier infraestructura. Existen 3 grupos grandes de firewalls:
1. Gateway Firewall
Controla el tráfico con base en la información contenida en las headers de los paquetes referentes a direcciones IP (origen y destino), puertos (origen y destino) y protocolos. Existen 2 categorías dentro de este grupo:
- Packet filter
Fue la primer tecnología de firewalls que vio la luz a finales de los 80s y principios de los 90s, consistente en filtrar cada paquete de forma independiente con base en IP fuente, IP destino, puerto fuente, puerto destino y protocolo.
Ofrecen ventajas en su alto desempeño y bajo costo, pero presentan una debilidad mayúscula en el hecho que al manejar cada paquete de forma aislada son incapaces de reconocer diversos tipos de ataques como flooding o DDoS, por tal motivo se conocen como firewall stateless, es decir, que no son conscientes de las sesiones o conexiones que recibe.
Las ACL de algunos routers son un ejemplo de packet filtering, en el que cada paquete se compara contra una tabla de reglas de IP, puertos y protocolos. Este caso no es muy recomendable, lo más adecuado es usar un router endurecido dedicado únicamente a enrutamiento y un firewall detrás encargado de realizar el filtrado del tráfico, así el desempeño del router no se afecta y se optimiza el desempeño de la red.
- Stateful Inspection
Desarrollado por Check Point Software Technologies a mediados de los 90s. Es el tipo de firewall más utilizado y recomendado para proteger redes, generalmente el perímetro de una red es controlado por un firewall de este tipo.
Cumple las mismas funciones que un packet filter y adicionalmente registra las conexiones que pasan a través de sí en una tabla, que chequea con cada entrada o salida de un paquete para determinar si lo permite o lo deniega, evitando así los tipos de ataques a los que un packet filter es vulnerable (flooding, DDoS, etc.).
Los statefull firewall ofrecen equilibrio en desempeño entre firewalls packet filter y application proxy.spam, Web Proxy, NAT, DHCP Server, entre muchos otros.
2. Application Proxy Firewall
Es el firewall más completo que existe, aunque presenta el menor throughput y el mayor costo (si se opta por una opción comercial). Se diferencia de los gateways firewalls en que tiene la capacidad de revisar hasta la capa 7 (aplicación) y la carga útil (payload) del paquete, es decir, realiza un chequeo completo.
Es vital comprender en primera instancia el concepto de proxy, que es un intermediario entre el usuario y el servicio que solicite, o sea el usuario vé el proxy como el servidor, mientras el servidor vé el proxy como el usuario. El mismo concepto se aplica a la tecnología de firewalls, donde el paquete es recibido y chequeado por el proxy firewall, que termina la conexión con el origen y establece una conexión con el destino (el usuario), es decir, el proxy firewall se convierte en el nuevo origen del paquete (modifica el campo source del paquete). El objetivo de actuar como intermediario es “simular” que el proxy recibe y procesa el paquete como si estuviera destinado a él, así determina si el mismo es seguro o no, para dejarlo pasar su destino verdadero.
La principal desventaja de este tipo de firewall es que demandan mayor procesamiento, por lo que pueden traer lentitud dependiendo del volumen de tráfico de la red. Un ejemplo de application proxy es el ISA (Internet Security & Aceleration) Server de Microsoft.
3. Personal Firewall
Podría considerarse un tercer tipo de firewall, que se ejecuta en las máquinas de los usuarios y que tiene como objetivo protegerlas de tráfico generado dentro de la misma red, mitigando, por ejemplo, la propagación de malware. También permiten definir con más detalle el tráfico permitido hacia y desde cada host de la red.
TOPOLOGÍAS
Existen diferentes formas de proteger una red mediante firewalls, como se dijo anteriormente, cada implementación depende de forma específica de la organización y sus necesidades, por tanto no existe una topología única que garantice la seguridad de cualquier red, sino una política de seguridad que tras un estudio profundo de la organización en cuestión, debe generar los lineamientos que aporten al diseño más adecuado, en este caso, de la topología de firewall a implementar.
Caso 1: Router ACLs
Constituye la forma más sencilla e insegura de topología, en la cual el router desempeña funciones de enrutamiento y filtrado de paquetes, es decir, es el dispositivo encargado de las comunicaciones y seguridad de la red. Este tipo de diseño presenta la desventaja de exponer la red a un gran número de ataques debido a su naturaleza stateless.
Fue una solución aceptable en su época, que en en la actualidad no debería implementarse por ningún motivo.
Caso 2: Servidores conectados directamente a Red Insegura
Servidores que ofrecen servicios al exterior de la red se encuentran conectados directamente al router y no al firewall, que protege la red interna. Toda la seguridad de los servidores depende de sí mismos, es decir, deben implementar diferentes mecanismos y técnicas de endurecimiento para soportar ataques desde la red insegura y continuar funcionando. Como recomendación deben tener el mínimo de paquetes instalados y servicios habilitados, así como endurecimiento a nivel de sistema operativo y servicios. El acceso desde los servidores públicos hacia la red interna es estrictamente prohibido debido a que pueden ser utilizados como salto hacia la red interna.
Caso 3: Demilitarized Zone (Single Firewall)
Tanto los servidores públicos como la red interna son protegidos por un firewall. El área en la que se ubican los servidores públicos se conoce como zona desmilitarizada, que puede definirse como una área pública protegida que ofrece servicios al interior y exterior de la red. La red interna se comunica con la DMZ mediante enrutamiento (no deberían compartir el mismo segmento de red por razones obvias de seguridad). Este tipo de diseño es muy común, debido a su fácil implementación, seguridad y control del flujo de tráfico.
Caso 4: Demilitarized Zone (Dual Firewall)
El diseño de firewall dual adiciona un gateway firewall para controlar y proteger la red interna, una de las razones es la protección de los servidores públicos frente a ataques provenientes de la red interna (como es bien conocido la mayor cantidad de ataques son generados desde dentro de la red). Ofrece mayor seguridad para la red interna al no contar con un punto único de ataque como en las anteriores topologías. Como desventajas puede decirse que tiene mayor dificultad de configuración y monitoreo, así como mayores costos en hardware y software.
Su implementación es adecuada para redes grandes en las que hay flujo de tráfico importante entre la red interna y la DMZ, donde también se demanda mayor seguridad para la red LAN.
Algunos expertos en seguridad afirman que para esta arquitectura deberían implementarse dos tipos diferentes de firewalls (fabricantes distintos), debido a que si un atacante logra pasar el firewall exterior, ya tendría suficiente información para superar el firewall interno (asumiendo que es de la misma clase), ya que tendrían similar configuración al firewall ya violentado.
Ejemplo “Defense In-depth”
Defense In-Depth es un concepto en seguridad de la información en el que la seguridad de un sistema informático se implementa mediante capas para maximizar la protección. En el siguiente ejemplo se observa cómo se aplica este concepto combinando diferentes tipos de firewalls que protegen diferentes activos de la red. Esta segmentación de la red permite que no se comprometa toda la red cuando un sistema es atacado exitosamente.
Observaciones:
- En el borde del perímetro se ubica un Stateful Gateway Firewall que realiza el filtrado de paquetes y protege la DMZ y LAN de tráfico proveniente de Internet, así como el que viaja entre la LAN y la DMZ. En este punto de la arquitectura de la red se busca seguridad y desempeño. Como alternativa podría ubicarse un firewall en frente de la red interna, como lo especifica el caso 4 (Dual Firewall).
- Los servidores críticos y con información más sensible de las redes son protegidos por Application Proxy Firewalls, para estos recursos la seguridad es mucho más importante que el desempeño.
- Cada servidor implementa mecanismos de seguridad propios que permiten reforzar la seguridad de la red, como endurecimiento de sistema operativo y servicios.
- Los usuarios tienen un firewall personal instalado en sus máquinas.
- El router no realiza filtrado o cifrado, es una máquina dedicada a enrutamiento que también ha sido endurecida a nivel de sistema.
ACTUALIDAD
Un firewall puede implementarse en hardware o software como veremos a continuación.
FIREWALL APPLIANCE (BASADO EN HARDWARE)
Máquinas endurecidas, optimizadas y diseñadas para realizar trabajos exclusivos de firewall, especialmente de filtrado de paquetes. Brindan grandes ventajas:
- Sistema operativo desarrollado y concebido para mitigar ataques.
- Mayor desempeño en comparación con los firewalls basados en software.
- Menor tiempo de implementación que los firewalls basados en software.
- Reducen necesidad de decidir entre hardware, sistema operativo y software de filtrado, ya que todo viene configurado, simplificado y optimizado en un solo paquete.
A continuación un listado de los appliances más utilizados en las medianas y grandes empresas:
- Cisco PIX (Private Internet Exchange.) - http://www.cisco.com/en/US/products/sw/secursw/ps2120/index.html
- Juniper NetScreen - http://www.juniper.net/us/en/products-services/security/netscreen/
- SonicWall - http://www.sonicwall.com/us/products/7543.html
- Checkpoint - http://www.checkpoint.com/products/appliances/index.html
- Astaro - http://www.astaro.com/our_products/astaro_security_gateway
FIREWALL BASADO EN SOFTWARE
Constituyen una alternativa más económica en relación que los firewall basados en hardware, pero presentan mayores desafíos en su implementación: debe seleccionarse adecuadamente la plataforma de hardware y endurecer el sistema operativo, debido a que sistemas Windows o Unix no son optimizados (por defecto) para uso para realizar reenvío de paquetes (forwarding), además corren por defecto servicios que no son requeridos si la máquina funciona como firewall exclusivamente. En conclusión presentan un mayor desafío en su configuración.
Algunos ejemplos de firewalls basados en software:
- Checkpoint (Virtualizado) - http://www.checkpoint.com/products/security_virtualization/index.html
- IPTables - http://www.netfilter.org/
- Microsoft Internet Security & Aceleration Server - http://www.microsoft.com/forefront/edgesecurity/isaserver/en/us/default.aspx
- Untangle - http://www.untangle.com/home
- SmoothWall - http://www.smoothwall.com
- Engarde Secure Linux - http://www.engardelinux.org/
- m0n0wall- http://m0n0.ch/wall/
IMPLEMENTAR UN FIREWALL
Recordemos que el diseño de la arquitectura y reglas del firewall se soportan sobre las políticas de seguridad de la organización. Los conceptos de diseño de la topología fueron mencionados anteriormente, en cuanto a las reglas que controlarán el tráfico, es recomendable seguir el siguiente el procedimiento:
1). Reunir suficiente información que permita permita una concepción de las reglas ajustada al sistema donde se implementarán, para ello se deben estudiar los servicios ofrecidos en la red y el tipo de usuarios que los reciben, considerando:
- Nivel de acceso a la información (privado/público)
- Criticidad de la información (alta, media, baja)
- Seguridad en comunicaciones (cifrado o texto claro)
2). Con base en los requerimientos reunidos, se definen zonas denominadas “Security Areas”, que constituyen un conjunto de activos de red con atributos y requerimientos de seguridad similares, es decir, la red es dividida en áreas con permisos y restricciones comunes. Cada una de ellas tiene un nivel de riesgo de 1 a 5 (1=alto, 5=bajo) que debe ser debidamente justificado y que permitirá definir prioridades e incluso QoS (calidad de servicio) sobre diferente tipo de tráfico. La siguiente tabla ilustra las Security Areas de un diseño para una red hipotética.
3. Construir en un nivel lógico las reglas que serán aplicadas a cada una de las Security Areas. La siguiente tabla explica este concepto que continúa con el ejemplo anterior.
Como se puede apreciar, se define qué tipo de accesos son permitidos entre las Security Areas y cuándo almacenar registros de las conexiones. Las reglas planteadas deben ser depuradas y re-evaluadas para asegurar que su implementación no causarán impactos negativos en la red, por ejemplo un DoS. Sería conveniente que el equipo de Tecnología y Seguridad de la Información trabajen en conjunto para llevar a cabo estos procesos.
4. Una vez finalizado el diseño se procede con la implementación y pruebas correspondientes de la solución.
CONSEJOS PARA ESCOGER UN FIREWALL
Los criterios más importantes para escoger un firewall incluyen:
- Throughput esperado: un firewall es un bottleneck para la red, una medida que es necesaria en la que se pierde en desempeño y se gana en seguridad. Este es un criterio de diseño importante porque se debe seleccionar una solución que no afecte considerablemente los tiempos de transferencia de información.
- Presupuesto: existen diversas alternativas libres y comerciales, a las cuales se les debe evaluar ventajas y desventajas en términos de credibilidad, calidad, soporte, casos de éxito y costos.
- Número de redes a proteger: el tamaño de la red es un punto importante que define las capacidades del hardware de la máquina. También debe estudiarse y considerarse el tráfico estimado que controlará el firewall.
- Nivel de profundidad del filtrado: dependiendo de los recursos a proteger es conveniente decidir hasta qué capa debe realizarse chequeo de los paquetes, considerando que a mayor nivel de profundidad se pierde en velocidad pero se gana en seguridad.
- Capacidad de escalabilidad de las funciones del firewall.
NOTAS/RECOMENDACIONES
- Un firewall funciona si existe un perímetro de red bien definido, en donde no existen otras conexiones o enlaces que rompan el perímetro en cuestión. Por ejemplo un access point indebidamente protegido, es un dispositivo que rompe un perímetro de seguridad, permitiéndole a un atacante registrarse automáticamente dentro de la red sin haber interactuado siquiera con el firewall. Otro ejemplo puede ser un usuario que se conecte a Internet mediante un módem desde el interior del perímetro.
- Las reglas del firewall deben ser chequeadas periódicamente, debido a que muchas veces creamos reglas “temporales” que se convierten en permanentes porque olvidamos removerlas.
- Es una buena práctica realizar la revisión continua de los reportes o logs generados para detectar situaciones que puedan ser prevenidas a tiempo.
- Un firewall debería ser lo mas simple y minimalista posible, es decir, que solo tenga instalado el software necesario para cumplir con el control del tráfico. Atacantes han comprometido firewalls mal implementados, que tenían instalados compiladores y otros paquetes que facilitan el despliegue de un ataque.
- La seguridad de la red no se concentra en el firewall, aunque es parte importante de la misma, sino en una política de seguridad coherente que se adapte a la organización y su misión, en la que se tome la red como un todo y no como sub-sistemas independientes que dependen de un firewall para protegerse.
Sobre IPTables:
- No ofrece chequeo a nivel de aplicación.
- Es software libre de gran robustez, pero tiene una curva de aprendizaje amplia en comparación con productos comerciales.
- No ofrece soporte oficial, situación que le pone en desventaja debido a que las grandes empresas requieren cumplir con reglamentación y estándares que les exigen implementar productos certificados y soportados por
- empresas de calidad.
¿Redes Microsoft requieren ISA Server?:
No necesariamente, deben considerarse los tips de selección de firewall mencionados anteriormente, además esta decisión produciría una total dependencia con un solo proveedor, con el que se contrataría infraestructura y seguridad. Es más aconsejable la diversificación del sistema, evitando así que una vulnerabilidad pueda afectar la totalidad de la red.
Combinar Tecnologías de Firewalls
Es una práctica muy conveniente, como se mencionó anteriormente en el ejemplo de Defense In-Depth. En la realidad es común encontrar arquitecturas que protegen el perímetro de la red con Cisco PIX, IPTables o Juniper Netscreen, mientras los activos más valiosos con Microsoft ISA Server.
Recomendaciones para los servidores públicos
- Es importante subrayar que los servidores públicos deben tener sus propios mecanismos de seguridad sin importar si se encuentran protegidos por un firewall.
- Es una buena práctica de seguridad que los servidores sean endurecidos, actualizados y parchados antes de su conexión y puesta en producción.
- No debe existir conexión directa entre los servidores públicos y la red interna, esto con el objetivo de evitar el acceso a esta última desde servidores en la DMZ que puedan estar comprometidos.
- Los servidores de la DMZ no deberían tener cuentas registradas del dominio de la red debido a que podrían exponer la estructura del mismo hacia el exterior de la red.
BIBLIOGRAFÍA
- Security in Computing, Fourth Edition
Charles P. Pfleeger - Pfleeger Consulting Group, Shari Lawrence Pfleeger
Prentice Hall 2006 - Firewall Policies and VPN Configurations
Anne Henmi, Mark Lucas, Abhishek Singh, Chris Cantrell
Syngress Publishing,Inc 2006 - Firewall Evolution - Deep Packet Inspection
Ido Dubrawsky 2003-07-29
Security Focus: http://www.securityfocus.com/infocus/1716 - The Enemy Within: Firewalls and Backdoors
Bob Rudis and Phil Kostenbader 2003-06-09
Security Focus: http://www.securityfocus.com/infocus/1701 - Firewall Evolution - Deep Packet Inspection
Ido Dubrawsky 2003-07-29
Security Focus: http://www.securityfocus.com/infocus/1716
Articulo escrito para La Comunidad DragonJAR por Julian Ospina (anaXmon)