FIREWALLS.

INDICE

1.- Definición de Firewalls

2.-Tipos de Firewalls

3.- TCP Wrappers

4.- ipfwadm

5.- ipchains

6.- Amenazas

7.- Ejemplos de Firewalls

Definición de Firewalls.

Es un dispositivo que evita que entren extraños en la red. Normalmente es un direccionador, unacomputadora autónoma con filtro de paquetes o software proxy, o un paquete de firewall ( un dispositivo de hardware que filtra y hace proxies).

Un firewall puede servir como punto de entrada único a un sitio. A medida que se reciben las peticiones de conexión, el firewall las va evaluando. Sólo procesa las peticiones de conexión de los hosts autorizados; el resto de peticiones son descartadas.

Los firewalls realizan las siguientes tareas:

·Filtro y análisis de paquetes. Los firewalls pueden realizar análisis condicionales ("si se encuentra este tipo de paquete, haré esto").

·Bloque de prococolo y contenido. Explotando esta capacidad se puede bloquear Java,JavaScript, Vbscript …, incluso se puede crear normas para bloquear firmas de ataques particulares.

·Autenticación y encriptación de usuario, conexión y sesión. Muchos firewalls utilizan varios algoritmos y sistemas de autenticación (DES,Triple DES, SSL,IPSEC,MD5,IDEA,etc…)

Resumiendo, dependiendo del diseño, un firewall protege a las redes en:

·Quién puede entrar.

·Qué puede entrar.

·Dónde y cuándo pueden entrar.

Indice

Tipos de Firewalls

Existen dos tipos principales de firewalls:

1.Firewall a nivel de red o filtro de paquete.

2.Pasarela de Aplicaciones.

1.-Firewall a nivel de red o filtro de paquete.

Son direccionadores con capacidades de filtro de paquetes. Al utilizar un firewall a niverl de red, se puede dar o negar acceso al sitio basándose en varias variables:

·Dirección de fuente.

·Protocolo.

·Número de puerto.

·Contenido.

Los firewalls basados en direccionadores, son dispositivos externos. Todo el tráfico exterior debe pasar a través de un direccionador, que manipula todos los procedimientos de aceptación y negación. Este método es de Sistema operativo y neutral en cuanto a la aplicación; además pueden vencer el spoofing y a los ataques DoS.

Tiene algunas deficiencias:

·Algunos direccionadores son vulnerables a algunos ataques.

·Su actuación puede deteriorarse cuando se utilizan procedimientos de filtrado excesivamente estrictos

2.- Pasarela de aplicación.

Las pasarelas de aplicación sustituyen a las conexiones entre clientes externos y su red interna. Durante este cambio nunca se envían los paquetes IP. En su lugar, se produce una especie de traducción, actuando la pasarela de conducto y de intérprete. Se obtiene más control global sobre cada servicio individual.

Deficiencias. Requieren una implicación substancial por parte del administrador porque debe configurar una aplicación proxy para cada servicio de la red (FTP,Telnet,http, correo,noticias, etc…).

Los clientes internos deben utilizar clientes que están al tanto del proxy.

Un ejemplo de paquete firewall de pasarela de aplicación es el firewall Tool Kit (FWTK), gratis para uso no comercial.

Indice

TCP Wrappers

Es la opción perfecta cuando no se puede utilizar un firewall, pero se necesita control de acceso a la red. Por ejemplo, se supone que se tiene un host web y se quiere bloquear todo el tráfico excepto el http. Se puede hacer y dejar un hueco par las conexiones SSH en el puerto 22 para que los desarrolladores web puedan cargararchivos, cambiar permisos, configurar scripts CGI. Para estas tareas TCP Wrappers es suficiente.

Indice

Ipfwadm

Es una herramienta de filtrado de paquetes para linux. Se utiliza par configurar,mantener e inspeccionar el firewall y las normas de cuenta en el kernel de linux. Estas normas pueden dividirse en cuatro categorías diferentes:

·Cuentas de paquetes de Ip

·El firewall de entrada de IP.

·El firewall de salida de ip.

·El firewall de envío de ip.

Para cada una de estas categorías se mantiene una lista de normas separada.

La sintaxis básica es:

Ipfwadm [rule_category] [policy_action] [policy] [interface] [target]

·La categoría de la norma es el tipo de norma que está defieniendo y si se aplica a cuenta, tráfico entrante, tráfico saliente, tráfico normal, no filtrado o tráfico enmascarado.

·La acción de la normativa es lo que se quiere hacer con ésta. Insertarla, adjuntarla o borrarla.

·La normativa es lo que quiere hacer con el tráfico especificado:aceptarlo,negarlo o rechazarlo.

·La interfaz es la interfaz de red a la que quiere aplicar las normas.

·El objetivo es la dirección de IP ( y quizás de puerto) a la que se está aplicando estas normas.

Categorías de normas ipfwadm


 
Opción
Función
-A [dirección]
Se utiliza para especificar las normas de cuenta de Ip. Direction puede ser in,out o ambas ( que es el valor por defecto
-F
Para especificar las normas de envío, o normas de las rutas corrientes de internet
-I
Para especificar las normas de filtrado de entrada, o normas de cómo se está filtrando el tráfico entrante
-M 
Para especificar las normas de enmascaramiento de IP. El enmascaramiento es la práctica de utilizar un máquina que ejecute ipfwadm para abastecer a múltiples máquinas con rutas para internet.
-O
Para especificar las normas de filtrado de salida, o normas sobre como se está filtrando el tráfico saliente.

Comandos ipfwadm


 
Comando
Función
-a [normativa]
Para adjuntar una normativa
-d [normativa]
Para borrar una normativa
-f
Para limpiar todas las normativas
-h
Para conseguir ayuda
-i [normativa]
Para insertar una normativa
-l
Para enumerar todas las normativas
-p
Para cambiar las normativas por defecto

Parámetros de ipfwadm


 
Parámetro
Función
-D [dirección]
Para especificar la dirección de destino (dónde van los paquetes)
-P [protocolo]
Para especificar el protocolo
-S [dirección]
Para especificar la dirección fuente( de dónde provienen los paquetes)
-W [interfaz]
Para especificar la interfaz de red a la que se está aplicando esa normativa
-b
Para aplicar la normativa actual tanto al tráfico entrante como al saliente. Se utiliza este parámetro cuando se está adjuntado, insertando o borrando una normativa.
-e
Para obtener una salida más extensa
-m
Para especificar que los paquetes que vengan bajo la normativa actual, estarán enmascarados como si vinieran del host local.
-n
Para especificar que ipfwadm debería mostrar toda la información en formato numérico( direcciones de IP y no nombres de hosts).
-o
Para activar el logging kernel en todos los paquetes que vengan bajo la normativa actual.
-r [puerto]
Para redirigir los paquetes hacia un socket local.

Ejemplo.

Se quiere negar todo el tráfico PPP de una conexión PPP desde el host 201.170.0.43

Realizando una combinación de las opciones anteriores se obtendría:

Ipfwadm -I -a deny -W ppp0 201.170.0.43

Nota.- Las normativas tienen tres opciones: accept, deny, reject.

Indice

ipchains

Es el sucesor de ipfwadm y soporta toda la funcionalidad de ipfwadm y más. La diferencia principal, desde el punto de vista de su uso, es que los comandos están ahora en mayúsculas, mientras que los argumentos están en minúsculas.


 
Comando
Función
-A
Para agregar una nueva norma a la cadena
-D
Eliminar una norma de una cadena
-F
Para limpiar todas las normas de una cadena o cadenas.
-I
Para insertar una norma a una cadena.
-L
Para listar todas las normas de una cadena.
-P
Para cambiar las normativas por defecto de una cadena.
-R
Para reemplazar una norma en una cadena.
Objetivo
Función

ACCEPT
Para permitir que el tipo de paquete descrito pase a través del firewall.
DENY
Para denegar un paquete definitivamente.
MASQ
Para aceptar el paquete descrito y dirigirlo a la red interna
REDIRECT
Para redireccionar el paquete descrito a un enlace o proceso local
REJECT
Para echar abajo un paquete y mandar el mensaje "HOST ICMP INACCESIBLE"
Predicado
Función

-b
Para especificar que la norma especificada debería aplicarse sin importar la dirección(entrante o saliente) que tome el paquete.
-d ! [dirección]
Para especificar la dirección de destino
-i ! [interfaz]
Para especificar la interfaz de red.
-p ! [protocolo]
Para especificar el protocolo.
-s ! [dirección]
Para especificar la dirección de la fuente.

Ejemplo

En ipfwadm:

Ipfwadm -I -a accept -V 172.16.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0

En ipchains:

Ipchains -A input -j ACCEPT -I eht0 -s 0.0.0.0/0 -d 0.0.0.0/0

Para ver mayor información: HOWTO

Indice

Amenazas

Un cortafuegos bien diseñado, configurado y sobre el que se efectúa el mantenimiento adecuado, es prácticamente impenetrable. De hecho la mayoría de los atacantes lo saben y tratarán de eludir el cortafuegos intentando utilizar relaciones de confianza y defectos en la seguridad de los enlaces más débiles, o los evitarán completamente lanzando el ataque a través de una cuenta de acceso telefónico.

Conocer los pasos que un atacante da para eludir los cortafuegos, ayuda para poder detectar y reaccionar ante el ataque, por eso mostraré unas técnicas típicas para descubrir y enumerar cortafuegos.

Identificación de cortafuegos

Casi todos los cortafuegos emiten un "rastro" electrónico único, es decir, con una sencilla exploración de puertos, de cortafuegos y captura de mensajes, los atacantes pueden determinar con efectividad el tipo, versión y las reglas de casi todos los cortafuegos instalados en la red.

Una vez identificado se puede buscar las debilidades e intentar explotarlas.

1.- Exploración directa.

Exploración de puertos específicos predeterminados. Ej: Firewall-1 de check point, escucha sobre los puertos Tcp 256,357,258 y MS Proxy sobre TCP 1080 y 1745. Sabiendo esto la identificación de este tipo de cortafuegos es sencilla si se utiliza el explorador de puertos nmap.

Nmap -n -vv -P0 -p256,1080,1745 192.168.50.1 -60 .254

-P0 desactiva el eco ICMP antes de la exploración, esto es importante porque la mayoría de los cortafuegos no responden a solicitudes de eco ICMP.

Existen técnicas que los atacantes pueden emplear para no caer en nuestro radar, tales como pings aleatorios, puertos objetivo,direcciones objetivo y puertos origen; usar hosts de cebo y realizar exploraciones de origen distribuido.

Contramedidas

Se puede actuar de dos formas:

·Bloqueando este tipo de exploración en los router frontera.

·Utilizando algún tipo de herramienta de detección de intrusos. Ej:Real Secure 3.0.Lance Spitzner.

2.- Trazado de ruta.

Una manera más silenciosa y sutil de encontrar cortafuegos en una red es usar traceroute.

Unix à traceroute.

NT à tracert.

Se utiliza para encontrar cada punto a lo largo de la trayectoria que sigue el mensaje en su camino hasta llegar al objeto y sacar alguna conclusión.

Tracert www.nisu.org

1107 ms104 ms100 ms172.28.2.21

2105 ms100 ms99 ms172.28.2.3

3106 ms135 ms102 ms172.31.0.149

4102 ms147 ms101 ms172.31.3.10

5108 ms107 ms106 ms212.163.174.113

6105 ms105 ms102 ms212.49.128.27

7106 ms106 ms107 ms212.49.129.94

8106 ms110 ms106 mstmesp1-cpd1.nuria.telefonica-data.net [193.149.1

.28]

9122 ms119 ms117 mstmdel1-Imdesp.nuria.telefonica-data.net [213.0.2

51.42]

10104 ms103 ms102 msjtmrro1-jtmdel1.nuria.telefonica-data.net [213.0

.251.142]

11104 ms103 ms103 msPOS2-1.EB-Madrid00.red.rediris.es [130.206.224.8

1]

12125 ms129 ms113 msA1-0-1.EB-Valencia1.red.rediris.es [130.206.224.

6]

13149 ms156 ms157 msuji-router.red.rediris.es [130.206.211.6]

14122 ms678 ms127 msr-intern.uji.es [150.128.197.35]

15138 ms135 ms136 mswww.nisu.org [150.128.82.105]

Traza completa.

Hay muchas posibilidades que el punto del camino que se ha detectado antes de llegar al objetivo 150.128.82.105 se al cortafuegos, además lleva un nombre que posiblemente sea descriptivo ( en este caso).

Algunos routers y cortafuegos se configuran para no devolver paquetes caducados TTL ICMP. En este caso la deducción tendrá un menor rigor.

1103 ms101 ms100 ms172.28.1.12

2564 ms98 ms100 ms172.28.1.3

3103 ms568 ms102 ms172.31.0.161

4114 ms561 ms101 ms172.31.3.26

5102 ms103 ms104 ms172.31.3.18

6103 ms106 ms103 ms212.163.174.113

7103 ms102 ms102 ms212.49.128.10

8106 ms106 ms105 ms212.49.129.90

9103 ms104 ms102 mstmesp1-cpd2.nuria.telefonica-data.net [193.149.1

.156]

10120 ms119 ms119 mstmpen1-Imdesp20.nuria.telefonica-data.net [213.0

.251.114]

11105 ms106 ms104 msjtmrro1-jtmpen1.nuria.telefonica-data.net [213.0

.251.130]

12106 ms108 ms108 ms213.0.250.34

13***Tiempo de espera agotado para esta solicitud.

14***Tiempo de espera agotado para esta solicitud.

15***Tiempo de espera agotado para esta solicitud.

16***Tiempo de espera agotado para esta solicitud.

17***Tiempo de espera agotado para esta solicitud.

18***Tiempo de espera agotado para esta solicitud.

19*

La solución para la filtración de información durante el trazado de rutas es restringir la respuesta a paquetes caducados TTL de tantos cortafuegos y routers como sea posible.

3.- Captura de mensajes

La exploración de los puertos de los cortafuegos resulta de utilidad para identificarlos, pero la mayoría de los cortafuegos no escuchan sobre puertos predeterminados; por lo que se tiene que utilizar la deducción para detectarlos.

Los cortafuegos más populares anunciarán su presencia simplemente conectándose a ellos. Cuando nos conectemos a una máquina que creemos que es un cortafuegos con netcat sobre el puerto 21 (ftp), obtendremos información de interés.

Ej: nc -v -n 192.168.51.129 21

(Unknown) [192.168.51.129] 21 (?) open

220 Secure Gateway FTP server ready.

El mensaje Secure Gateway FTP server ready. Es la marca del Eagle Raptor.

Exploración a través de los cortafuegos

1.- hping

Funciona enviando paquetes TCP al puerto destino e informando de los paquetes que regresan. Con hping se pueden descubrir paquetes abiertos, bloqueados, caídos y rechazados.

Para evitar un ataque hping, lo ideal seria bloquear los mensajes ICMP de tipo 13.

2.- Firewalking

Firewalk es una pequeña utilidad que , como un explorador de puertos, descubrirá los puertos abiertos que se encuentran detrás de un cortafuegos.

Filtrado de paquetes.

Se puede atravesar un cortafuegos gracias al empleo de un ACL (listas de control de acceso), demasiado tolerante, permitiendo que pasen algunos paquetes sin problemas.

1.- ACL tolerantes.

Se puede dar el caso en que una empresa desee permitir a su ISP que realice traslados de zona. En este caso, podría determinar la utilización de un ACL demasiado tolerante, ejemplo "Allow all activity from the source port of 53". El riesgo a este tipo de configuraciones es muy alto; cualquiera podría explorar toda nuestra red desde el exterior.

2.- Check Point

Check Point posee puertos abiertos de forma predeterminada. Las búsquedas DNS(UDP 53), transferencia de zona DNS (TCP 53) y RIP (UDP 520) están permitidas desde cualquier host a cualquier host y no son registradas.

El ataque sólo funciona una vez que los atacantes hayn conseguido acceder a un sistema situado detrás del cortafuegos, o hayan conseguido entrar como falso usuario ejecutando un troyano.

3.- Tunelización ICMP y UDP

Es la capacidad de envolver los datos reales en una cabecera ICMP. Muchos routers y cortafuegos permiten pasar paquetes ICMP ECHO, ICMP ECHO REPLY, UDP sin verlos.

Existen las herramientas loki y lokid para explotar esta vulnerabilidad.

Vulnerabilidades de proxy de aplicación

Las vulnerabilidades de proxy de aplicación son pocas y aparecen muy de cuando en cuando.

1.- Hostname:localhost.

En los proxy más antiguos de Unix, es fácil perder las restricciones de acceso local.Es posible que un usuario interno consiga acceso local al propio cortafuegos. Este ataque requiere un nombre de usuario y contraseña válidos para el cortafuegos.

Ej:

Nc -v -n 192.168.51.129 23

(UNKNOWN) [192.168.51.129] 23 (?) open

Eagle Secure Gateway

Hostname:

Si se prueba con localhost y un usuario y contraseña adivinado se tendrá acceso local al cortafuegos.

Luego con rdist se puede probar a entrar con usuario root.

2.- Acceso proxy externo sin autenticar.

Se da cuando se olvida de bloquear el acceso exterior. Un atacante puede utilizar el servidor proxy para navegar por internet de forma anónima atacando servidores web y también puede conseguir acceso web a toda la intranet.

Indice

Ejemplos de Firewalls

Hay un número de importantes propiedades a pedir a estos productos:

·Translación/Privacidad de las direcciones. Evita que las direcciones de la red interna salgan a internet. Los cortafuegos en sí mismo aparecen como generadores de todo el tráfico haciendo Internet accesible sólo a los usuarios internos elegidos.

·Alarmas/Alertas. Avisa a los administradores cuándo un atacante está intentando entrar en el sistema. Las configuraciones de valores umbral deben estar disponibles y configuradas para avisar de ataques cuando se disparan las alarmas. La notificación de ataques debería hacerse con mensajes,páginas, correo electrónico, pero siempre en tiempo real.

·Registros e informes. Suministra información valiosa que le ayuda a evaluar y detectar problemas potenciales de seguridad.

·Transparencia. Permite a los usuarios internos que necesitan acceder a internet hacerlo sin retrasos que lo hagan difícil.

·Comprobación de virus.Comprueba la existencia de virus y programas tipo caballo de troya. Sin embargo esta propiedad puede afectar al rendimiento y no está siempre disponible.

Cortafuegos comerciales.

Black Hole de Milkyway Networks.

Diseñado para tratar los problemas de transparencia y rendimiento. Es tanto un cortafuegos a nivel de aplicación como de circuito. Los usuarios no necesitan hacer peticiones a proxy, proxy intercepta el tráfico, verifica la identificación y lo retransmite.

Se ejecuta sobre S.O. Sun-OS y UNIX(BSDI) y ha sido diseñado bajo la filosofía "lo que no está explícitamente permitido, se rechaza".

Black Hole, puede conectar con otros BalckHole en sucursales vía un canal encriptado Internet. La VPN resultante proporciona un cana para la transmisión de datos entre localizaciones de modo que proporciona integridad, confidencialidad, identificación y no repudio.

Entre las propiedades más importantes están:

1.Identificación a nivel de usuario. Todo el tráfico que pasa por el firewall, correo, web, gopher, otros,.. deben recibir identificación basada en el ID del usuario, contraseña, direcciones de red fuente/destino, tiempo de aplicación y t de acceso.

2.Bidireccionalidad. El tráfico puede fluir en ambas direcciones por el cortafuegos, aunque todo el tráfico debe ser identificado con el que especifique el administrador de la red.

3.Registros, auditorías y alarmas. Trazará todoslos sucesos críticos y registrará la información sobre estos sucesos, incluyendo las direcciones de red fuente / destino; la aplicación envuelta, el id del usuario, la hora del suceso, y los byte de información transmitida.

Firewall /Plus de _Network-1

Supone que las mayores amenazas de seguridad están en la red interna.

La aproximación de Network-1 es crear un producto que trabaje con todos los niveles de la pila de protocolo. Esto permite interceptar el tráfico al nivel más bajo y filtrarlo de modo que sólo el paquete permitido es el paquete que alcanza la siguiente capa.

El firewall es capaz de aceptar las reglas de filtrado en cualquier capa. Permite controlas las transacciones entrante y saliente punto a punto, no sólo las del cortafuegos conectado a internet y permite controlar cualquier protocolo no sólo el IP.

Eagle NT de Raptor Systems.

Características. Oculta las direcciones IP a los usuarios externos.

Se instala con las tablas DNS invertidas, de modo que intenta resolver la dirección IP de cada paquete recibido antes de enviarlo al proxy de su destino.

Eagle lo hace mirando el nombre de host y debería estar asociado con la dirección IP dada. Hay una pequeña degradación al hacer esto, pero hay seguridad de que los paquetes enviados por direcciones IP autorizadas realmente están originadas en los hosts conocidos ( y autorizados) asociados a ellas.

Las notificaciones de alerta pueden hacerse por correo, SNMP.

EagleNT utiliza la configuración D_NS a nivel dual para resolver los nombres de hosts externos sin exponer la estructura de la red interna en el proceso.

Los clientes que se conectan desde el exterior sólo son conscientes de la dirección IP de salida del cortafuegos. Esto requiere dos servidores DNS; uno se ejecuta en el cortafuegos y sólo sabe la información de los usuarios externos; otro servidor DNS, ejecutándose en la parte interna del cortafuegos mantiene la información del sistema interno.

Cortafuegos a medida Windows NT.

Es posible conectar una computadora windows Nt a internet como pasarela para clientes internos o que proporcione servicios web o FTP a usuarios NT; sin embargo se debe ser cuidadoso en evaluar objetivos e implicaciones de seguridad.

Hay dos tipos de servicios de red disponibles en una computadora Windows NT:

·SMB (bloques de mensajes de servidor) que son servicios de archivos y de red. Estos servicios están instalados por defecto.

·Servicios TCP/IP e internet como servidores web y FTP.

Cuando se conecta cualquier sistema windows a internet hay un peligro potencial de los protocolos SMB. Si hay carpetas compartidas SMB en la red que conecta a internet, cualquiera de los usuarios conectados a internet pueden acceder a las carpetas o secuestrar sesiones.

Existen problemas de seguridad intrínsecos a los protocolos.

Microsoft Proxy Server

Suministra una manera de controlar como los usuarios individuales acceden a internet usando protocolo ftp,web….

Suministra a los usuarios internos el acceso a recursos externos y bloque intentos de extraños de acceder a la red interna.

Avertis.

Paquete firewall. Solución basada en hadware y software; proporciona filtrado en tiempo real y análisis de tráfico en red, protección contra ataques spoofing y proxy dehardware.

CSM/Proxy

Incluye filtrado de ActiveX, Java, cookies, noticias y correo. Soporta también Windows 95.

GNAT

Puede gestionarse en una interfaz de línea de comandos o en una basado en la web. Filtra tráfico entrante basado en dirección de fuente IP; dirección destino, puerto, interfaz de red y protocolo.

NetScreen

Es un firewall y una solución externa a la red que proporciona encriptación e integridad de sesión. Los protocolos soportados son ARP,TCP/IP,UDP,ICMP,DHCP,http,RADIUS,IPSEC.

PIX

Basado en router, sistema de seguridad de marca (CISCO), y proporciona cierta tecnología de filtrado potente. Incluye administración y configuración basada en HTML,shadowing y no traslación de IP, prevención de DoS y spoofing.

SecureConnect

Incluye control de acceso, encriptación, filtrado avanzado, soporte para los protocolos más conocidos y gestión de marcado RADIUS.

Phoenix

Cortafuegos gratuitos.

Dante. Puede proporcionar conectabilidad de red segura y conveniente a una gran cantidad de hosts, mientras que sólo requiere que el servidor donde se ejecute Dante tenga conectabilidad de red externa. Es esencialmente una implementación SOCKS gratuita.

Ip_filter.

Es un filtro avanzado de paquetes TCP/IP para utilizar en entornos de firewall. Tiene un gran número de opciones, incluyendo filtrado de paquetes fragmentados.

SINUS.

Es un filtro de paquetes TCP/IP.

Indice