Ramón Millán - Consultoría en Tecnologías de la Información y Comunicaciones

Seguridad en Internet y cortafuegos (I)

Autor: Ramón Jesús Millán Tejedor

Publicado en Windows NT/2000 Actual nº 9, Prensa Tecnica S.A., 1999

Acceder a la segunda parte

Introducción

En Internet abundan los crackers, piratas o violadores informáticos con interes en atacar un sistema para obtener beneficios de forma ilegal; los hackers, que son aquellos que lo hacen simplemente como pasatiempo y reto tecnico -es decir, son más respetuosos con la información-; y los sniffers, que rastrean y observan todos los mensajes que hay en la red.

Son muchos los lugares de las redes de empresa donde los piratas informáticos pueden penetrar para introducir virus, extraer información o causar daños de todo tipo. Así mismo, tambien es bastante frecuente la captura de tráfico ilegal, pudiendo los intrusos disponer de información muy valiosa de comportamiento, información personal e incluso infamación de las transacciones realizadas.

De este modo, Internet ha de protegerse de estos comportamientos indeseables desde una doble perspectiva:

  • Seguridad y privacidad del usuario.
  • Seguridad y control del acceso a los sistemas corporativos.

El presente artículo se centra en el estudio de la segunda de las perspectivas, realizando una breve exposición de la problemática y soluciones relacionadas con la primera de ellas. Veremos que, aunque para los sistemas corporativos no es fácil dotarse de ellas, existen ciertas armas con las que protegerse, si bien la velocidad a la que se mueven la tecnología y los estándares no facilita en nada la labor. De hecho, las cuestiones de seguridad de los cortafuegos, sitios Web y navegadores, son conceptos tan recientes que los administradores de las Intranets apenas han tenido tiempo de sistematizar su conocimiento. Además, pocos fabricantes de software Intranet lanzan sus productos antes de solucionar todos los potenciales resquicios de seguridad. De ahí la utilidad del presente artículo, como guía concisa pero completa a los cortafuegos, dando pautas y buenas referencias para estudios posteriores por parte del lector interesado en profundizar en estos temas. Para ampliar conocimientos a este respecto se recomienda el libro "Internet y la seguridad en redes" de Prentice-Hall.

Seguridad

Dentro de la seguridad, se pueden identificar los siguientes problemas:

  • Usurpación de datos. En las comunicaciones entre usuario remoto y servidor, es fácil interceptar los paquetes de información que viajan entre ellos para realizar un uso malicioso de los mismos. Los dos casos más relevantes son el envío de palabras de paso y el de números de tarjeta de credito por la red. Para evitar los posibles fraudes que la disposición ilícita de este tipo de información pueda originar, se han adoptado tecnicas de encriptado y de sistemas de transacciones seguras: SST (Secure Transaction Technology) y SEPP (Secure Electronic Payment Protocol); o sistemas de seguridad a nivel de aplicación o de red: SSL (Secure Socket Layer) y SHTP (Secure Hypertext Transport Protocol).
  • Integridad de la información. Es un problema similar al anterior, pero en la cual la acción del intruso no se limita a la copia de la información, sino tambien a su modificación. Los mecanismos de protección son los mismos que en el caso de usurpación.
  • Autentificación. Este problema es doble para el usuario, por un lado es posible que otro usuario logre realizar una comunicación tomando nuestra dirección como origen del envío, es decir, usurpando nuestra identidad. El mecanismo aplicado para solucionarlo se basa en tecnicas de firma digital. Otra faceta de la autentificación de cara al usuario es la garantía de que el servidor al cual se ha conectado es realmente nuestro servidor y no un "suplantador" que trata de capturar nuestros datos. Se resuelve mediante tecnicas de encriptado.
  • No repudiación. Este problema clásico en comercio electrónico y aparece cuando un interlocutor niega haber generado cierta información. La solución consiste en establecer mecanismos de juicio, como las firmas digitales, que permitan a una tercera persona imparcial, un juez, decidir sobre el tema.
  • Control de acceso. El control de acceso surge una vez que se han resuelto los problemas anteriores y la información ha llegado a su destino. Se trata de definir que derechos de acceso a la información se da a cada destinatario, lo cual es especialmente importante cuando se difunde información sujeta a derechos de autor. Para abordar este problema se utilizan lenguajes de gestión de derechos o RMLs (Rigth Management Languages), y sistemas de gestión que hacen uso de diversas tecnicas criptográficas como el sistema Cryptologies de IBM.
  • Verificación de propiedad de la información. Finalmente, se trata de detectar el uso fraudulento de la información, en caso de no poder evitarse, con objeto de proceder mediante las acciones legales pertinentes. Se emplean dos tecnicas de marcado de la información: watermarking o marcas de agua, y fingerprinting.

Otro tema relacionado con la seguridad que cada vez preocupa más a los internautas es la privacidad de los datos personales. Bajo este concepto enmarcamos el registro de información sobre nuestros datos cuando realizamos accesos a servicios proporcionados por Internet (dirección e-mail por los datos de la conexión, perfil del usuario según los destinos accedidos, etc.

En aquellos casos en los que se mantenga un registro de accesos debería informarse al usuario antes de que este procediera a la navegación con el servidor, indicando el propósito y el uso al que está destinada la información registrada.

Seguridad mediante cortafuegos

El principio de los mecanismos de seguridad de los sistemas corporativos es el de mantener a los intrusos fuera de la red de la empresa, permitiendole a esta realizar su trabajo.

La tecnología fundamental utilizada en estos casos es la instalación de un firewall o cortafuegos. En el entorno de redes de ordenadores, un cortafuegos es un sistema de contención que intenta impedir la diseminación de daños a traves suyo. Físicamente, un cortafuegos de Internet es un sistema o grupo de sistemas informáticos situados en el perímetro de una red para proteger todas sus vías de acceso estableciendo un control del tráfico de entrada y salida. La podemos asemejar a una aduana, que vigila todo lo que la atraviesa, decidiendo que puede o no atravesarla y bajo que condiciones. Por consiguiente, un cortafuegos sólo protege contra la diseminación de los ataques derivados de accesos públicos, es decir, sólo puede controlar el tráfico que pasa a traves de el.

Desde el punto de vista de las funciones, el cortafuegos tiene una doble misión:

  • Bloquear el tráfico proveniente de direcciones no autorizadas o que acceden aplicaciones restringidas.
  • Permitir el flujo de tráfico de las operaciones legales.

En función de las implementaciones, el enfasis se hará en el tráfico que debe ser bloqueado y en otros casos se centrarán en el tipo de tráfico que deben permitir. Los principales aspectos críticos que deberá resolver la configuración del cortafuegos en los sistemas corporativos se centrarán en las siguientes problemáticas:

  • Comunes con el usuario: usurpación de la identidad e integridad de la información.
  • Accesos autorizados: permitir el acceso a las direcciones de origen validadas y autorizadas.
  • Aplicaciones autorizadas: permitir el acceso a las aplicaciones en función de la identidad validada.
  • Filtrado de solicitudes de conexión desde nuestra red a Internet.
  • Protección de los datos de identidad de nuestros usuarios en los accesos autorizados a Internet.
  • Protección ante "caballos de troya", en forma de archivos Java, PostScript, etc.
  • Realizar todas las funciones anteriores sin afectar a las prestaciones y funcionalidades de Internet que los usuarios internos demandan.

La necesidad de una política de seguridad

Con todo esto, es obvio que es preciso establecer una política de control de acceso adecuada a las necesidades del entorno protegido y que su eficacia depende de la medida en que sea aplicada correctamente. Debemos ser conscientes de que puede y de que no puede protegernos un cortafuegos para complementar la seguridad allí donde sea necesario. Es decir, para establecer un cortafuegos es necesario un especialista en sistemas de protección que entienda perfectamente las necesidades del sistema.

Pero como en todo sistema, para que un cortafuegos sea realmente efectivo, debe formar parte equilibrada de una arquitectura global de seguridad. No tiene sentido concentrar importantes recursos en un complejo sistema de cortafuegos, si nuestro sistema de seguridad presenta debilidades en todos los puntos (disqueteras, los propios usuarios, módems de acceso remoto…). De hecho, en un reciente estudio de Datapro Research Corporation, se resumía que la distribución de los problemas de seguridad basados en redes responde a la siguiente distribución:

  • Errores de los empleados: 50 %.
  • Empleados deshonestos: 15 %.
  • Empleados descuidados: 15 %.
  • Intrusos ajenos a la empresa: 10 %.
  • Integridad física de instalaciones: 10 %.

Para elaborar la política de acceso, cuyo análisis derivará en soluciones que deberán ser revisadas periódicamente, es conveniente analizar con cuidado varios factores:

  • Servicios Internet que se van a usar.
  • Ubicación servicios a los que se desea acceder.
  • Necesidades adicionales, como criptografía.
  • Riesgos asociados.
  • Coste de proporcionar la protección.
  • Balance de protección, frente a facilidad de uso.

Conceptos básicos de cortafuegos

Como hemos visto, un cortafuegos es un dispositivo lógico que protege a una red privada del resto de la red pública. Pero se ha de recalcar que, no se trata de cualquier sistema capaz de mejorar la seguridad de la red interna, sino que ha de cumplir tres premisas:

  1. Todo el tráfico entre la red interna y la externa debe pasar necesariamente a traves del cortafuegos. Para ello pueden emplearse varias arquitecturas físicas y lógicas.
  2. Sólo el tráfico autorizado según la política de seguridad del administrador de la red interna puede pasar de una red a otra.
  3. El sistema cortafuegos es inmune a ataques desde la red externa.

A partir de estas premisas son posibles distintas implantaciones de cortafuegos diferenciadas por la arquitectura concreta que asegura la premisa (1) y por la forma de efectuar el filtrado de la información de una red a otra, según la (3).

El funcionamiento básico de un cortafuegos es el siguiente:

  • Se coge un ordenador con capacidad de encaminar (por ejemplo, un PC con Linux).
  • Se le ponen dos interfaces (por ejemplo interfaces serie, o Ethernet, o de paso de testigo en anillo…).
  • Se le deshabilita el reenvío de paquetes IP (IP forwarding).
  • Se conecta a una interfaz de Internet.
  • Se conecta a la otra interfaz de red que se quiere proteger.

Se tienen de este modo dos redes distintas que comparten un ordenador. La máquina puente o cortafuegos, puede comunicarse tanto con la red protegida como con Internet. La red protegida no puede comunicarse con Internet, e Internet no puede comunicarse con la red protegida, pues se ha deshabilitado el reenvío IP en el único punto en que se conectan. De este modo, si se quiere acceder a Internet desde la red protegida, hay que hacer primero un telnet al cortafuegos, y acceder a Internet desde el. De la misma forma, para acceder a la red protegida desde Internet, se debe pasar antes por el cortafuegos. Este mecanismo implica que cualquier ataque desde el exterior deberá siempre realizarse tambien en dos pasos: primeramente deberá caer el cortafuegos que actúa como muralla para, despues, atacar el interior. De esta forma se facilita la defensa, pues se puede concentrar el esfuerzo defensivo sobre el cortafuegos.

Tipos de cortafuegos

Ateniendonos al mecanismo de funcionamiento, o metodos de filtrado de la información, podemos distinguir dos tipos de cortafuegos según a que nivel respecto al modelo OSI actúen:

  • Nivel de red (protocolo IP) y de transporte (protocolos UDP/TCP). El control de tráfico a estos niveles consiste en analizar todos los paquetes que llegan a una interfaz de red, y decidir si se les deja pasar o no dependiendo de criterios como: tipo de protocolo, dirección de la fuente y dirección de destino, fundamentalmente. Estos cortafuegos se basan en: encaminadores apantallados o pasarelas a nivel de red.
  • Nivel de aplicación. El control se hace interceptando las comunicaciones a nivel del protocolo de comunicaciones propio de cada servicio, que es modificado para incluir medidas adicionales de seguridad. Se basan en pasarelas a nivel de aplicación.

Recordemos que los encaminadores o routers, son dispositivos que interconectan redes a nivel de red del modelo OSI de la ISO. Realizan funciones de control de tráfico y encaminamiento de paquetes por el camino más eficiente en cada momento. La diferencia fundamental con los puentes o bridges, que trabajan a nivel de enlace, es que estos no son capaces de realizar tareas de encaminamiento en tiempo real. Las pasarelas o gateways son ordenadores que funcionan a nivel de aplicación del modelo OSI de ISO. Es el más potente de todos los dispositivos de interconexión de redes. Permiten interconectar redes de distintas arquitecturas, es decir, realiza conversiones de protocolo, a diferencia de los encaminadores. En el contexto dado, pasarela es una máquina que conecta dos o más redes, encaminando paquetes de una a otra.

Pasarelas a nivel de red

Los cortafuegos más sencillos se basan en el filtrado de paquetes. Los dispositivos típicamente utilizados son los encaminadores apantallados, capaces de filtrar paquetes en base a la dirección origen y/o destino y al servicio o puerto al que acceden.

Se puede usar el filtrado para bloquear conexiones a o desde servidores o redes determinadas, así como para bloquear puertos especiales. Esto nos permite activar o desactivar servicios bien conocidos de forma selectiva para aquellos servidores o redes que no consideremos seguros o que queramos proteger especialmente.

Proteccion a traves de una pasarela a nivel de red

Figura 1: Protección a traves de una pasarela a nivel de red.

Por ejemplo, una red local podría permitir sólo el acceso externo al puerto 25, correspondiente al protocolo SMTP (Simple Mail Transfer Protocol) de su servidor de correo, pero no a los de ningún otro ordenador, forzando así a que todo el correo entrante pase por el servidor y, protegiendo el demonio de correo de las demás máquinas de ataques externos. Tambien puede ser interesante, establecer filtros temporales, en los que ciertos servicios están habilitados durante una determinada franja horaria durante la cual se tiene la certeza de que los mismos no son necesarios.

A partir de la política de seguridad establecida, se determinarán las reglas de filtrado de paquetes que debe interpretar el encaminador. Cada vez que el encaminador recibe un paquete por una de sus dos interfaces, comprueba secuencialmente cada una de las reglas y cuando encuentra un patrón que se ajusta al del paquete recibido, ejecuta la acción pertinente, es decir, permite o deniega el acceso.

Los distintos modelos de encaminadores existentes, tienen diferentes formas y capacidades de filtrado:

  • Sólo filtran paquetes que entran en cada interfaz.
  • Sólo filtran los paquetes que van a salir por cada interfaz.
  • Filtran tanto a la entrada como a la salida del paquete de la interfaz.
  • Otros, pueden fijarse en información adicional en cada paquete, como puede ser el bit de asentimiento, que permite distinguir entre paquetes de inicio de una conexión TCP y paquetes pertenecientes a una conexión ya iniciada. De esta forma puede impedirse que se establezca una conexión, si esta se origina desde el exterior, pero permitir dicha conexión si el origen está en la red interna. Otra característica que suele ser configurable es el modo en que los paquetes son descartados. En general, los encaminadores emiten mensajes de redirección ICMP (Internet Control Message Protocol) cuando un paquete IP no puede ser encaminado, indicando el motivo. Pero en determinados casos es interesante descartar el paquete sin informar al destino del descarte.

Tambien es posible aplicar la filtración a traves de PCs, gracias a programas como KarlBridge o Drawbridge. Los productos basados en PC son populares por su bajo coste, comparado con las plataformas Unix basadas en RISC o con productos encaminadores especiales. No obstante, la evolución de las características de este tipo de programas, los hacen más semejantes a pasarelas a nivel de aplicación que a meros dispositivos de filtración de paquetes.

Problemas

Los principales problemas que presentan los cortafuegos basados en dispositivos de filtrado de información a nivel 3 y 4 de la torre OSI, son:

  • El gran problema de los cortafuegos a nivel 3, es que restringen mucho el acceso a Internet desde la red protegida. Básicamente, reducen su uso al que se podría hacer desde un terminal. Si bien muchas veces el objetivo buscado por el administrador de la Intranet, es restringir el acceso al exterior desde el interior de la red corporativa, este hecho se vuelve especialmente incómodo cuando se desea facilitar libertad de movimientos a los usuarios del interior. El problema se agrava dado que el punto crítico del sistema es la máquina puente y, sin no se desea comprometer su seguridad, no conviene permitir el acceso a la misma por parte de los usuarios. Pero si los usuarios no pueden acceder a la misma no podrían acceder al exterior…
  • El hecho de tener que entrar en el cortafuegos y desde allí realizar todo el acceso a Internet es una restricción muy seria. Por ejemplo, programas como Netscape, que requieren una conexión directa a Internet, no funcionan desde detrás de un cortafuegos. Otros servicios, como FTP y DNS tampoco pueden ser controlados correctamente mediante un mero filtrado de paquetes, pues requieren del establecimiento de conexiones en ambos sentidos.
  • Existen protocolos cuyos servidores actúan en puertos no reservados (por debajo del 1.024), como es el caso del protocolo X11 o protocolos que no poseen una dirección del servidor fija, como el portmapper de SunOS, que da lugar a que RPC (Remote Procedure Call) no pueda filtrarse con efectividad.
  • En muchas implantaciones de filtración de paquetes, faltan los mecanismos de intervención y alerta y tambien pueden sufrir malas interfaces de administración y de usuario.

Pasarelas a nivel de aplicación

Como hemos visto, los filtros de paquetes son demasiado rígidos, difíciles de configurar y sus capacidades de registro histórico son muy limitadas. Además su funcionamiento de basa en un sistema todo o nada: el acceso a un servicio en o desde una máquina se permite o no, pero no hay un termino medio.

Protección tras un servidor proxy

Figura 2: Protección tras un servidor.

El siguiente paso es usar pasarelas a nivel de aplicación (gateway o proxy): en estos sistemas el usuario no accede directamente al servicio sino un sistema intermedio que realiza las comprobaciones pertinentes, anota la transacción, toma una decisión y, si es positiva, actúa de intermediario entre el cliente y el servicio remoto correspondiente, posiblemente controlando la ejecución del protocolo del servicio y tomando notas adicionales.

Para ello se coloca en la máquina puente un tipo especial de servidor (no sólo WWW, sino tambien de otros servicios, como por ejemplo: FTP, Gopher, Wais…), denominado proxy, que actúa como cliente de los servidores externos a la vez que como servidor de los clientes externos. Así no será necesario que un usuario se conecte a la máquina puente para realizar un FTP al exterior. Simplemente, configurará su cliente de FTP para que emplee el servidor de la máquina puente como proxy. A partir de este momento, creerá establecer conexiones con el exterior, cuando en realidad su cliente FTP se estará conectando con el proxy y pidiendole que este establezca una conexión con el exterior para extraer un fichero y luego entregárselo. Es decir, enviará a su apoderado a la Internet externa ya que el no está autorizado a salir. Lo mismo ocurre con un servicio WWW. Un cliente interno podría acceder a un servidor corporativo de la Intranet y, a la vez, ser incapaz de establecer conexiones con el exterior. Si se instala un servidor proxy de WWW en la máquina puente y se configuran los clientes de la Intranet para utilizarlo, estos dirigirán todas sus peticiones HTTP (HyperText Transport Protocol) al proxy que, a su vez, recuperará por ellos la información del exterior y se la devolverá a ellos. El usuario tendrá la sensación de conectarse directamente ya que todo el proceso será, para el, transparente.

De lo anterior, se deduce que la funcionalidad de actuar como proxy es una característica relacionada con la seguridad, no hay que confundir pues esta funcionalidad con la de cache. En efecto, una primera idea que le puede venir a la cabeza es que si los clientes van a consultar a un proxy es probable que varios hagan la misma consulta. Por tanto, no sería mala idea la incorporación de una cache a los servidores proxy. Si un usuario accede al mismo, este comprueba, en primer lugar, si el objeto buscado se encuentra en su cache y, de ser así, lo devuelve sin necesidad de realizar una conexión con el exterior. De ahí que la mayoría de los proveedores de Internet cuenten con caches de varios gigas en sus proxys. De esta forma parecen más rápidos ante sus clientes y ahorran ancho de banda. Ambas funciones, la de cache y proxy ya vienen incorporadas dentro de muchos servidores WWW.

Otro tipo de pasarelas a nivel de aplicación además de los servidores proxy o apoderados, son las pasarelas a nivel de circuito. En estas los paquetes se envían a un proceso a nivel de aplicación de usuario. Las pasarelas a nivel de circuito se dedican a reencaminar conexiones TCP. Cada vez que se tenga que establecer una conexión a traves del cortafuegos debe establecerse un circuito TCP hasta este y tras hacer las comprobaciones pertinentes, el cortafuegos establece un segundo circuito hasta el destino requerido. Entonces, el cortafuegos actúa como un mero cable de conexión entre ambos circuitos, copiando los bytes de uno a otro lado. Las compuertas a nivel de circuito constituyen el metodo más general y flexible para construir pasarelas a nivel de aplicación.

Problemas

Los principales problemas que presentan los cortafuegos basados en dispositivos de filtrado de información a nivel 7 de la torre OSI, son:

  • Perdida de transparencia: el usuario a menudo debe ser consciente de su existencia y tomar decisiones adicionales para tratar con ellas. En ocasiones puede ser preciso un programa cliente especial, lo cual podría constituir un inconveniente.
  • Degradación del rendimiento del cortafuegos. Puesto que el filtrado de información a nivel 3 y 4 es muy sencillo, los encaminadores apantallados suelen ser muy rápidos y transparentes al usuario. En cambio el filtrado a nivel 7, supone un mayor retardo en el análisis de cada paquete. No obstante, el hecho de efectuar el control a este nivel dándole al cortafuegos conocimiento sobre los protocolos de alto nivel que está manejando incrementa mucho la seguridad.

Acceder a la segunda parte

Volver al listado de artículos