Teoría Sobre Firewalls
Teoría Sobre Firewalls
Teoría Sobre Firewalls
Introduccin
Los primeros dispositivos del tipo Firewall (o cortafuegos) aparecieron en la mitad de la dcada de los
80. Desde esos primeros Cortafuegos que implementaron simples y rudimentarios filtros de paquetes hasta
los actuales dispositivos capaces de analizar simultneamente la actividad en mltiples capas de la red, la
tecnologa ha evolucionado mucho creando herramientas ms sofisticadas y ms seguras.
La popularizacin de Internet ha originado mltiples problemas de seguridad hasta el punto en que, hoy
por hoy, esta inseguridad inherente a la red es, segn todos los expertos, el principal obstculo para el
xito de las actividades de Comercio Electrnico.
El Cortafuegos se ha convertido, de esta forma, en un dispositivo indispensable dentro de la arquitectura
de cualquier red de ordenadores que tenga acceso a Internet.
Seguridad en TCP/IP
A pesar de que la familia de protocolos TCP/IP fue desarrollada inicialmente para el Departamento de
Defensa de los Estados Unidos, existen en ella un nmero considerable de graves problemas de seguridad
que son inherentes al protocolo e independientes del nivel de correccin de cualquier implementacin. El
hecho de que un host confe en algo tan vulnerable como la direccin IP que viene escrita en un paquete
como nica autenticacin de la procedencia de dichos datos, los casi inexistentes mecanismos de
autenticacin asociados a los protocolos de enrutamiento o la falta de mecanismos que garanticen la
confidencialidad y la integridad de los datos que viajan a travs de una red son claros ejemplos de ello.
Algunos de estos problemas pueden ser solventados mediante el uso de un cortafuegos. Los cortafuegos,
junto con los antivirus, constituyen hoy en da la herramienta de seguridad ms efectiva y ampliame nte
extendida a nivel corporativo (y crece poco a poco a nivel domstico gracias a la proliferacin de
cortafuegos personales) y se revela como el nico mecanismo de seguridad verdaderamente efectivo para
protegernos de estas vulnerabilidades intrnsecas al protocolo TCP/IP.
Los principales riesgos de una organizacin con salida a Internet son los mismos que debemos tener en
cuenta a la hora de proteger un sistema cualquiera: confidencia lidad, integridad y disponibilidad. Los
siguientes son los ataque ms frecuentes y populares que vulneran estos principios:
o
o
o
o
o
o
o
o
Sniffers.
Suplantacin de IP o Spoofing.
Ataques de contraseas
Control de salida ilegal informacin sensible desde una fuente interna.
Ataques de Hombre en el medio (o man-in-the- middle attacks).
Ataques de Denegacin de Servicio, Denial of Service o ataques DoS.
Ataques a nivel de aplicacin para explotar vulnerabilidades conocidas.
Caballos de Troya (Trojan Horses), Virus y otros cdigos maliciosos.
o
o
o
Con todas o algunas de esta caractersticas se forman dos listas de reglas: una de permitidas y otra de
denegadas. La forma en que un paquete recibido se procesa en funcin de estas dos listas difiere segn el
modelo, el fabricante o el modo de actuacin configurado y define en gran medida la permisividad del
cortafuegos.
Los ms restrictivos exigen que el paquete pase con xito por ambas listas, es decir, que no sea
expresamente denegado en la una y sea expresamente autorizado en la segunda. Otras veces existe una
nica lista de reglas y el paquete es procesado segn la primera regla que encontramos en la tabla y define
como tratarlo. Otros cortafuegos usan la ltima regla que encuentran como accin a efectuar.
Por ltimo, tambin encontramos diferencias en cuanto a que hacer cuando no se encuentra ninguna regla
vlida: algunos productos aceptan el paquete y otros lo rechazan. Es, pues, fundamental conocer
perfectamente el modo de trabajo del equipo que nos ocupa en cada momento.
Aparte de Aceptar (Accept) o Rechazar (Reject o Deny), la mayora de los cortafuegos de este tipo poseen
un tercer tipo de accin: Descartar (Discard o Drop). Cuando un paquete es procesado por una regla que
define esta accin, este se elimina silenciosamente sin devolverse error alguno al originario del mismo
creando un efecto de agujero negro y evitando as el cortafuegos revelar su presencia.
Las principales bondades de este tipo de cortafuegos estn en su rapidez, transparencia y flexibilidad.
Proporcionan un alto rendimiento y escalabilidad y muy bajo coste, y son muy tiles para bloquear la
mayora de los ataques de Denegacin de Servicio, por ello se siguen implementando como servicios
integrados en algunos routers y dispositivos hardware de balanceo de carga de gama media-alta.
Usando esta informacin y con un ligero escrutinio de las cabeceras de los paquetes, el cortafuegos es
capaz de determinar cuando un paquete es vlido y cuando no lo es. Una vez que la conexin es
establecida, el resto de los paquetes asociados con ella son rutados sin ms comprobaciones. Esto los hara,
de base, tremendamente vulnerables a ciertos tipos de ataques, pero muy pocos cortafuegos de este tipo
son tan rudimentarios. Sobre esta base, y aprovechando la gran velocidad y consistencia que supone la
misma, se realizan otro tipo de verificaciones para, por ejemplo, asegurarnos que no ha habido
suplantamiento (spoofing), que no existen paquetes malformados, etc.
Tambin son comunes en ellos la implantacin de sistemas de translacin de direcciones, NAT, que
ocultan eficazmente el interior de nuestra red a intrusos externos.
Las principales ventajas de este esquema de salvaguardas son la velocidad de filtrado, la solidez de sus
principios de cara a establecer una poltica de seguridad y, en conjunto con un esquema de traslacin de
direcciones, la slida proteccin adicional a las direcciones IP internas.
Sus principales debilidades residen en su limitacin estrictamente al escrutinio del protocolo TCP, la
imposibilidad de chequear protocolos de niveles altos, las limitaciones inherentes a su mecnica de
actuacin a la hora de llevar un registro de sucesos y la imposibilidad de implementar algunos servicios
de valor aadido, como realizar cacheado de objetos http o filtrado de URLs (puesto que no entiende n
estos protocolos).
Las principales ventajas de este tipo de cortafuegos son sus detallados registros de trfico (ya que pueden
examinar la totalidad del paquete de datos), el valor aadido que supone tener un servicio de autenticac i n
de cara a securizar nuestra red, y la casi nula vulnerabilidad que presentan ante ataques de suplantac i n
(spoofing), el aislamiento que realizan de nuestra red, la seguridad que proporciona la comprensin a
alto nivel de los protocolos que inspeccionan y los servicios aadidos, como cach y filtro de URLs, que
prcticamente todos implementan.
Entre los inconvenientes estn sus menores prestaciones (en cuanto a velocidad de inspeccin se refiere)
frente a los otros modelos ya vistos, la necesidad de contar con servicios especficos para cada tipo distinto
de trfico, la imposibilidad de ejecutar muchos otros servicios en el (puesto que se escucha en los mismos
puertos), la imposibilidad de inspeccionar protocolos como UDP, RPC y otros servicios comunes, la
necesidad de reemplazar la pila TCP nativa en el servidor donde se ejecutan y lo vulnerables que resultan
ante ataques directos al sistema operativo sobre el que se suelen ejecutar.
informacin asociada a una conexin virtual se guarda durante un periodo de tiempo muy corto y si no se
recibe dicho paquete de respuesta durante este, la conexin es invalidada. Algunos modelos de este tipo
de cortafuegos pueden realizan controles similares a ste sobre el protocolo ICMP.
Por lo dems, estos cortafuegos se comportan exactamente igual que los de filtrado simple de paquetes,
con sus mismas ventajas e idnticos inconvenientes
Cortafuegos Hbridos
En los ltimos aos las fronteras entre las distintas generaciones de cortafuegos aqu expuestas se han
difuminado y, cada vez en mayor medida, aparecen en el mercado productos comerciales que combinan
las mejores caractersticas de dos o ms de estas plataformas. As, por ejemplo, podemos encontrar con
facilidad cortafuegos a nivel de aplicacin con servicios de proxy que incluyen filtrado de paquetes para
inspeccionar las tramas UDP que antes le estaban restringidas.
En definitiva, la hibridacin de tecnologas y la amalgama de caractersticas de los actuales productos ha
potenciado las ventajas de estos equipos pero tambin ha complicado en gran medida la tarea de elegir
cual es el cortafuegos ms adecuado a nuestras necesidades.
Translacin de Puertos
El sistema de translacin de puertos (PAT) resuelve los dos problemas vistos en el esquema anterior,
convirtindolo en la mejor forma de implementar NAT. En primer lugar no es necesario usar la direccin
externa del Cortafuegos, sino que podemos crear otra direccin virtual para este propsito. En segundo
lugar, es posible hacer accesibles recursos internos a los usuarios del exterior.
El cortafuegos usa el puerto del cliente para identificar cada conexin entrante y construye a tal efecto una
tabla de traslaciones como la mostrada a continuacin:
La translacin de puertos se realiza de forma secuencial en algunos sistemas (como el de la tabla del
ejemplo anterior) y aleatoria, dentro de un rango de puertos vlidos, en otros.
Se trata, de los tres esquemas vistos, del ms conveniente, flexible, seguro y por tanto el ms ampliame nte
usado en la actualidad.
Inspeccin de Contenidos
Es uno de los servicios adicionales ms interesantes que ofrecen los Cortafuegos a Nivel de Aplicaci n:
realizar una inspeccin de contenidos en el trfico HTTP y SMTP incluyendo los siguientes elementos:
o
o
o
o
o
o
Applets de Java
Cdigo ActiveX, JavaScript o CGI.
Inspeccin de virus (binarios y de macro).
Inspeccin del contenido de ciertos formatos (.zip, .doc, .xls, .ppt, etc.)
Bloqueo de contenidos en base a URLs, direcciones IP y/o palabras clave.
Bloqueo de comandos especficos de determinadas aplicaciones.
Autenticacin de Usuarios
Otro servicio bsico en los cortafuegos a nivel de aplicacin es la autenticacin de usuarios que en los
dispositivos a nivel de red debe limitarse a la direccin IP de procedencia de la peticin, con el
consiguiente riesgo de suplantacin, mientras que en estos pueden habilitarse servicios clsicos de
combinacin login / password.
Firewall de Windows
Firewall de Windows viene con Windows (a partir de Windows XP SP1) y est activado de manera
predeterminada.
La siguiente es una imagen que muestra cmo funciona el firewall:
Activar Firewall de Windows . Esta configuracin est activada de forma predeterminada. Cuando
Firewall de Windows est activado, se bloquea la recepcin de informacin a travs del firewall
para la mayora de las aplicaciones. Si queremos permitir que una aplicacin reciba informac i n,
seguimos los pasos de la siguiente seccin para agregarla a la lista de aplicaciones permitidas.
Bloquear todas las conexiones entrantes, incluidas las de la lista de aplicaciones permitidas Con
esta opcin se bloquean todos los intentos de conexin al equipo no solicitados. Podemos utiliza r la
cuando necesitemos mxima proteccin para el equipo, como cuando estemos conectados con una
red pblica en un hotel o aeropuerto. Si bloqueamos todas las conexiones entrantes, an puedremos
ver la mayora de las pginas web, as como enviar y recibir mensajes de correo electrnico y
mensajes instantneos.
Notificarme cuando Firewall de Windows bloquee una nueva aplicacin . Si activamos esta casilla,
Firewall de Windows nos informar cada vez que bloquee una aplicacin nueva y nos ofrecer la
opcin de desbloquearla.
Desactivar Firewall de Windows (no recomendado). No deberamos utilizar esta opcin a menos
que se ejecutemos otro firewall en el equipo.
Cmo todas las vulnerabilidades no son conocidas, as como tampoco son conocidos los posibles ataques,
se han desarrollado productos para detectar tanto las posibles vulnerabilidades de los programas instalados
en los ordenadores, del sistema operativo como de servicios de red, como los posibles ataques que se
pueden perpetrar.
Han surgido detectores de ataques, que actan como centinelas, esperando desde cambios en los permisos
de los ficheros y accesos no permitidos en los sistemas, hasta ataques conocidos en el flujo de datos que
circula por las redes.
Cortafuegos vs IDS
Es entonces cuando hablamos de los Intrusion Detection Systems (IDS) e Intrusion Prevention Systems
(IPS). De ahora en adelante, ambos sern referenciados como IDS.
Un IDS es un sistema que intenta detectar y alertar sobre las intrusiones intentadas en un sistema o en una
red, considerando intrusin a toda actividad no autorizada o que no debera ocurrir en ese sistema. Segn
esta definicin, muchos podran pensar que ese trabajo ya se realiza mediante los cortafuegos o firewa lls.
Pero ahora veremos las diferencias entre los dos componentes y como un IDS es un buen compleme nto
de los cortafuegos.
La principal diferencia, es que un cortafuegos es una herramienta basada en la aplicacin de un sistema
de restricciones y excepciones sujeta a muchos tipos de ataques, desde los ataques tunneling(saltos de
barrera) a los ataques basados en las aplicaciones. Los cortafuegos filtran los paquetes y permiten su paso
o los bloquean por medio de una tabla de decisiones basadas en el protocolo de red utilizado.
Las reglas verifican contra una base de datos que determina si est permitido un protocolo determinado y
permite o no el paso del paquete basndose en atributos tales como las direcciones de origen y de destino,
el nmero de puerto, etc... Esto se convierte en un problema cuando un atacante enmascara el trfico que
debera ser analizado por el cortafuegos o utilizar un programa para comunicarse directamente con una
aplicacin remota. Estos aspectos se escapan a las funcionalidades previstas en el diseo inicial de los
cortafuegos. Es aqu donde entran los IDS, ya que estos son capaces de detectar cuando ocurren estos
fallos.
Definiciones
Como se ha descrito en el apartado anterior, un IDS es un software que monitorea el trfico de una red y
los sistemas de una organizacin en busca de seales de intrusin, actividades de usuarios no autorizados
y la ocurrencia de malas prcticas, como en el caso de los usuarios autorizados que intentan sobrepasar
sus lmites de restriccin de acceso a la informacin.
Algunas de las caractersticas deseables para un IDS son:
o
o
o
o
o
o
Tipos de IDS
Existen varios tipos de IDS, clasificados segn el tipo de situacin fsica, del tipo de deteccin que posee
o de su naturaleza y reaccin cuando detecta un posible ataque.
Por situacin
Segn la funcin del software IDS, estos pueden ser:
o
o
Los NIDS analizan el trfico de la red completa, examinando los paquetes individualme nte,
comprendiendo todas las diferentes opciones que pueden coexistir dentro de un paquete de red y
detectando paquetes armados maliciosamente y diseados para no ser detectados por los cortafuegos.
Pueden buscar cual es el programa en particular del servidor web al que se est accediendo y con qu
opciones y producir alertas cuando un atacante intenta explotar algn fallo en este programa. Los NIDS
tienen dos componentes:
o
o
Examinan el trfico de la red en el segmento en el cual se conecta, pero no puede detectar un ataque
en diferentes segmentos de la red. La solucin ms sencilla es colocar diversos sensores.
Pueden generar trfico en la red.
Ataques con sesiones encriptadas son difciles de detectar.
En cambio, los HIDS analizan el trfico sobre un servidor o una PC, se preocupan de lo que est
sucediendo en cada host y son capaces de detectar situaciones como los intentos fallidos de acceso o
modificaciones en archivos considerados crticos. Las ventajas que aporta el HIDS son:
o
o
o
o
o
o
o
o
La deteccin del mal uso involucra la verificacin sobre tipos ilegales de trfico de red, por ejemplo,
combinaciones dentro de un paquete que no se podran dar legtimamente. Este tipo de deteccin puede
incluir los intentos de un usuario por ejecutar programas sin permiso (por ejemplo, sniffers). Los
modelos de deteccin basado en el mal uso se implementan observando cmo se pueden explotar los
puntos dbiles de los sistemas, describiendolos mediante unos patrones o una secuencia de eventos o datos
(firma) que sern interpretados por el IDS.
La deteccin de actividades anmalas se apoya en estadsticas tras comprender cual es el trfico normal
en la red del que no lo es. Un claro ejemplo de actividad anmala sera la deteccin de trfico fuera de
horario de oficina o el acceso repetitivo desde una mquina remota (rastreo de puertos). Este modelo de
deteccin se realiza detectando cambios en los patrones de utilizacin o comportamiento del sistema. Esto
se consigue realizando un modelo estadstico que contenga una mtrica definida y compararlo con los
datos reales analizados en busca de desviaciones estadsticas significantes.
Segn su naturaleza
Un tercer y ltimo tipo bsico de clasificacin sera respecto a la reaccin del IDS frente a un posible
ataque:
o
o
Pasivos.
Reactivos.
Los IDS pasivos detectan una posible violacin de la seguridad, registran la informacin y genera una
alerta.
Los IDS reactivos estn diseados para responder ante una actividad ilegal, por ejemplo, sacando al
usuario del sistema o mediante la reprogramacin del cortafuegos para impedir el trfico desde una fuente
hostil. A este tipo de sistemas se los suele llamar Intrusion Prevention System (IPS), o Sistema de
Prevencin de Intrusiones.
Topologas de IDS
Existen muchas formas de aadir las herramientas IDS a nuestra red, cada una de ellas tiene su ventaja y
su desventaja. La mejor opcin debera ser un compendio entre coste econmico y propiedades deseadas,
manteniendo un alto nivel de ventajas y un nmero controlado de desventajas, todo ello de acuerdo con
las necesidades de la organizacin.
Por este motivo, las posiciones de los IDS dentro de una red son varias y aportan diferentes caractersticas.
A continuacin vamos a ver diferentes posibilidades en una misma red. Imaginemos que tenemos una red
donde un cortafuegos nos divide la Internet de la zona desmilitarizada (DMZ Demilitarized Zone), y
otro que divide la DMZ de la intranet de la organizacin como se muestra en el dibujo 1. Por zona
desmilitarizada entendemos la zona que debemos mostrar al exterior, la zona desde la cual mostramos
nuestros servicios o productos:
HoneyPots
Como se analiz anteriormente, existen varias tcnicas para detectar que existe un ataque en curso, y
reaccionar adecuadamente a l.
Pero existe un enfoque mucho ms sencillo para detectar a la mayora de los atacantes y malware que
puede estar funcionando en nuestra red.
Se basa en la premisa de que, si disponemos de un dispositivo que no tiene absolutamente ninguna funci n
real para la infraestructura, es decir, que no cumple ninguna funcin, ni como cliente, ni como servidor...
cualquier intento de conexin hacia l podra considerarse como un intento de ataque. Por qu? Porque
si ese equipo no brinda ningn servicio a nuestra red, el hecho de que alguien est intentando conectarse
debe significar que esa persona est buscando posibles vctimas para un ataque.
Tambin podra tratarse de un malware, que ya ha infectado alguno de nuestros dispositivos, y ahora se
encuentra en proceso de replicacin hacia otros dispositivos de la misma red.
Implementacin de Mejoras
Por otra parte, el registro de la actividad del atacante que interacta con el honeypot muestra nuevas
tcnicas o tendencias de ataques de los que podemos aprender, y por lo tanto, permite planificar e
implantar las medidas de seguridad oportunas a corto, medio e incluso a largo plazo para paliar posibles
futuros ataques sobre los sistemas productivos de la empresa.
Clasificacin
Existen diversas formas de clasificar los honeypots. Aqu lo haremos basndonos en dos de sus
propiedades principales: la localizacin concreta dentro de una red y la interaccin que permite con el
atacante.
Segn la Localizacin
Pueden situarse en un entorno de:
Produccin
El objetivo que se pretende alcanzar al implantar un honeypot en una red en produccin no es otro que la
obtencin de informacin sobre las tcnicas empleadas para tratar de vulnerar los sistemas que componen
dicha infraestructura.
El abanico de posibilidades que nos ofrece un honeypot en una red en produccin es muy amplio. Desde
la posibilidad de ubicar el honeypot en el segmento de la red de servidores internos de la compaa, con
el objetivo de detectar posibles accesos por parte de usuarios internos a recursos crticos de la organizac i n
(por ejemplo al fichero de nminas), hasta la publicacin de un servicio web con idntica configuracin y
diseo que el mismo servicio que est en produccin o preproduccin.
El mayor inconveniente que supone esta eleccin es el peligro que supone para los sistemas organizativos
el permitir (incluso provocar) que el trfico malintencionado conviva con el legtimo.
Investigacin
En este caso, el principal objetivo es la recopilacin de la mayor cantidad de informacin que permita al
investigador poder analizar las nuevas tendencias en los mtodos de ataque, as como los principa les
objetivos perseguidos y los distintos orgenes de los ataques. El resultado de este anlisis es recogido en
informes cuyo objetivo es respaldar la toma de decisiones en la implantacin de las medidas de seguridad
preventivas.
Segn la Interaccin
Otro mtodo de clasificacin de los tarros de miel es el que define la INTERACCIN con el atacante.
En este caso, los honeypots se agrupan en dos tipos:
Baja Interaccin
El honeypot emula un servicio, una aplicacin o un sistema vulnerable. Sus caractersticas principales son
su sencilla instalacin y configuracin, junto con lo limitado de su capacidad para obtener diferentes tipos
de datos. Unos ejemplos de honeypots de este tipo son:
Honeyd: Quizs uno de los honeypots ms sencillos y populares. Es un demonio que crea hosts virtua les
en una red. Los anfitriones pueden ser configurados para ejecutar servicios arbitrarios, y su
comportamiento puede ser adaptado para que simule estar en ejecucin en ciertos sistemas operativos.
HoneyC: El objetivo de este honeypot es la identificacin de servidores web maliciosos en la red. Para
ello emula varios clientes y recaba la mayor cantidad posible de informacin de las respuestas de los
servidores cuando stos contestan a sus solicitudes de conexin. HoneyC es ampliable de diversas formas:
pueden utilizarse diferentes clientes, sistemas de bsqueda y algoritmos de anlisis.
Nephentes: Honeypot de baja interaccin que pretende emular vulnerabilidades conocidas para recopilar
informacin sobre posibles ataques. Nepenthes est diseado para emular vulnerabilidades que los
gusanos utilizan para propagarse y cuando estos intentan aprovecharlas, captura su cdigo para su
posterior anlisis.
Honeytrap: Este honeypot est destinado a la observacin de ataques contra servicios de red. En contraste
con otros honeypots, que se suelen centrar en la recogida de malware, el objetivo de Honeytrap es la
captura de exploits.
Glastopf: Emula miles de vulnerabilidades para recopilar datos de los ataques contra aplicaciones web. La
base para la recoleccin de informacin es la respuesta correcta que se le ofrece al atacante cuando intenta
explotar la aplicacin web. Es fcil de configurar y una vez indexado por los buscadores, los intentos de
explotacin de sus vulnerabilidades se multiplican.
Alta Interaccin
En este caso el honeypot es una aplicacin con la cual se puede interactuar y que responde como se espera,
con la diferencia de que su diseo est orientado a realizar un registro exhaustivo de la actividad que se
lleva a cabo sobre ella y de que la informacin que contiene no es relevante en ningn caso.
HI-HAT (High Interaction Honeypot Analysis Toolkit): Herramienta que transforma aplicaciones php en
aplicaciones honeypot de alta interaccin. Adems ofrece una interfaz web que permite consultar y
monitorizar los datos registrados.
HoneyBow: Herramienta de recopilacin de malware que puede integrarse con el honeypot de baja
interaccin Nephentes para crear una herramienta de recoleccin mucho ms completa.
Sebek: Funciona como un HIDS (Host-based Intrusion Detection System) permitiendo capturar una gran
variedad de informacin sobre la actividad en un sistema ya que acta a muy bajo nivel. Es una
arquitectura cliente-servidor, con capacidad multiplataforma, que permite desplegar honeypots cliente en
sistemas Windows, Linux, Solaris, *BSD, etc., que se encargan de la captura y el envo de la actividad
recopilada hacia el servidor Sebek. Podramos decir que forma parte de una tercera generacin de
honeypots.
Capture-HPC: Del tipo cliente, como HoneyC, identifica servidores potencialmente maliciosos
interactuando con ellos, utilizando una mquina virtual dedicada y observando cambios de sistema no
previstos o autorizados.
Bibliografa
Este texto est basado en Cortafuegos. Comparativa entre las Distintas Generaciones y Funcionalidades
Adicionales (Versin 1.1), escrito por Jos Mara Morales Vzquez