CAPITULO IV. PRINCIPALES MECANISMOS DE SEGURIDAD EN REDES IP
4.2 VPN (REDES PRIVADAS VIRTUALES)
Hasta no hace mucho tiempo, las diferentes sucursales de una empresa podían tener, cada una, una red local a la sucursal que operara aislada de las demás. Cada una de estas redes locales tenía su propio esquema de nombres, su propio sistema de correo electrónico, e inclusive usar protocolos que difieran de los usados en otras sucursales. Es decir, en cada lugar existía una configuración totalmente local, que no necesariamente debía ser compatible con alguna o todas las demás configuraciones de las otras áreas dentro de la misma empresa.
A medida que los computadores fueron incorporados a las empresas, que surgieron los sistemas de información y se incrementó la importancia de las diferentes redes corporativas, surgió la necesidad de comunicar las diferentes redes locales para compartir recursos internos. Para cumplir este objetivo, debía establecerse un medio físico para la comunicación. Este medio fueron las líneas telefónicas, con la ventaja de que la disponibilidad es muy alta y que se garantiza la privacidad. Además de la comunicación entre diferentes sucursales, surgió la necesidad de proveer acceso a los usuarios móviles de la empresa. Mediante Servicios de Acceso Remoto (Remote Access Services - RAS), este tipo de usuario puede conectarse a la red de la empresa y usar los recursos disponibles dentro de la misma. El gran inconveniente del uso de las líneas telefónicas es su alto costo, ya que se suele cobrar un cargo básico más una tarifa por el uso, en el que se tienen en cuenta la duración de las llamadas y la distancia. Si la empresa tiene sucursales dentro del mismo país pero en distintas áreas telefónicas, y, además, tiene sucursales en otros países, los costos telefónicos pueden llegar a ser exagerados. Adicionalmente, si los usuarios móviles deben conectarse a la red corporativa y no se encuentran dentro del área de la empresa, deben realizar llamadas de larga distancia, con lo que los costos se incrementan. Las VPN son una alternativa a la conexión WAN mediante líneas telefónicas y al servicio RAS, bajando los costos de éstos y brindando los mismos servicios, mediante autenticación, cifrado y el uso de túneles para las conexiones.
Una Red Privada Virtual es un sistema para simular una red privada sobre una red pública, por ejemplo, Internet. Como se muestra en la figura 4.5, la idea es que la red pública sea “vista” desde dentro de la red privada como un cable lógico que une dos o más redes que pertenecen a la red privada. Las VPNs también permiten la conexión de usuarios móviles a la red privada, tal como si estuvieran
en una LAN dentro de una oficina de la empresa donde se implementa la VPN. Esto resulta muy conveniente para personal que no tiene lugar fijo de trabajo dentro de la empresa, como podrían ser vendedores, ejecutivos que viajan, personal que realiza trabajo desde el hogar, etc. La forma de comunicación entre las partes de la red privada a través de la red pública se hace estableciendo túneles virtuales entre dos puntos para los cuales se negocian esquemas de encriptación y autentificación que aseguran la confidencialidad e integridad de los datos transmitidos utilizando la red pública. Como se usan redes públicas, en general Internet, es necesario prestar debida atención a las cuestiones de seguridad, que se aborda a través de estos esquemas de encriptación y autentificación y que se describirán luego.
La tecnología de túneles, Tunneling, es una técnica que usa una infraestructura entre redes para transferir datos de una red a otra. Los datos o la carga pueden ser transferidas como tramas de otro protocolo. El protocolo de tunneling encapsula las tramas con una cabecera adicional, en vez de enviarla como la produjo en nodo original. La cabecera adicional proporciona información de routing para hacer capaz a la carga de atravesar la red intermedia. Las tramas encapsuladas son enrutadas a través de un túnel que tiene como puntos finales los dos puntos entre la red intermedia. El túnel es una camino lógico a través del cual se encapsulan paquetes viajando entre la red intermedia. Cuando una trama encapsulada llega a su destino en la red intermedia, se desencapsula y se envía a su destino final dentro de la red.
Figura 4.5 Red Privada Virtual y su equivalente lógico
Tunneling incluye todo el proceso de encapsulado, desencapsulado y transmisión de las tramas. Entre las tecnologías de Tunneling más conocidas se encuentran:
• IPSec – Internet Protocol Security Tunnel Mode
• PPTP - Point-to-Point Tunneling Protocol
• L2F – Layer 2 Forwarding
• L2TP – Layer 2 Tunneling Protoco
• IPX for Novell Netware over IP
• GRE – Generic Routing Encapsulation (rfc 1701/2)
• ATMP – Ascend Tunnel Management Protocol
•
MIP – Mobile IPLas técnicas de autenticación son esenciales en las VPNs, ya que aseguran a los participantes de la misma que están intercambiando información con el usuario o dispositivo correcto. La autenticación en VPNs es conceptualmente parecido al inicio de sesión en un sistema que utiliza nombre de usuario y contraseña, pero con necesidades mayores de aseguramiento de validación de identidades. La mayoría de los sistemas de autenticación usados en VPN están basados en un sistema de claves compartidas. La autenticación es llevada a cabo generalmente al inicio de una sesión, y luego aleatoriamente durante el curso de la misma, para asegurar que no haya algún tercer participante que se haya intrometido en la conversación. La autenticación también puede ser usada para asegurar la integridad de los datos. Los datos son procesados con un algoritmo de hashing para derivar un valor incluido en el mensaje como checksum. Cualquier desviación en el checksum indica que los datos sufrieron daños en la transmisión o fueron interceptados y modificados en el camino. Algunos ejemplos de sistemas de autenticación son Challenge Handshake Authentication Protocol (CHAP) y RSA.
Todas las VPNs tienen algún tipo de tecnología de encriptación, que esencialmente empaqueta los datos en un paquete seguro. La encriptación es considerada tan esencial como la autenticación, ya que protege los datos transportados de la poder ser vistos y entendidos en el viaje de un extremo a otro de la conexión. Existen dos tipos de técnicas de encriptación que se usan en las VPN: encriptación de clave secreta o privada, y encriptación de clave pública.
En la encriptación de clave secreta, se utiliza una contraseña secreta conocida por todos los participantes que necesitan acceso a la información encriptada. Dicha contraseña se utiliza tanto para encriptar como para desencriptar la información. Este tipo de encriptación posee el problema que, como la contraseña es compartida por todos los participantes y debe mantenerse secreta, al ser revelada, debe ser cambiada y distribuida a los participantes, con lo cual se puede crear de esta manera algún problema de seguridad.
La encriptación de clave pública implica la utilización de dos claves, una pública y una privada. La primera es enviada a los demás participantes. Al encriptar, se usa la clave privada propia y la clave pública del otro participante de la conversación. Al recibir la información, ésta es desencriptada usando su propia clave privada y la pública del generador de la información. La gran desventaja de este tipo de encriptación es que resulta ser más lenta que la de clave secreta.
En las VPNs, la encriptación debe ser realizada en tiempo real. Por eso, los flujos encriptados a través de una red son encriptados utilizando encriptación de clave secreta con claves que son solamente buenas para sesiones de flujo. El protocolo más usado para la encriptación dentro de las VPNs es IPSec, que consiste en un conjunto de propuestas del IETF que delinean un protocolo IP seguro para IPv4 e IPv6. IPSec provee encriptación a nivel de IP, como se explicó en el Capítulo 3.
El método de túneles, como se mencionó anteriormente, es una forma de crear una red privada. Permite encapsular paquetes dentro de paquetes para acomodar protocolos incompatibles. Dentro de los protocolos que se usan para la metodología de túneles se
encuentran Point-to-Point Tunneling Protocol (PPTP), Layer-2 Forwarding Protocol (L2FP) y el modo túnel de IPSec. Mediante la Seguridad del protocolo de Internet (IPSec), se puede ofrecer privacidad, integridad, autenticidad y protección contra reproducción para el tráfico de red en las siguientes situaciones:
• Seguridad extremo a extremo de cliente a servidor, servidor a servidor y cliente a cliente mediante el modo de transporte IPSec.
•
Acceso remoto seguro desde el cliente a la puerta de enlace a través de Internet mediante el Protocolo de Túnel de capa 2(L2TP) protegido por IPSec.
IPSec proporciona conexiones seguras entre puertas de enlace a través de redes de área extensa (WAN) externas o conexiones de Internet que utilizan túneles L2TP/IPSec o el modo de túnel IPSec puro. IPSec define los formatos de paquetes IP y la infraestructura relacionada para proporcionar una eficaz autenticación de principio a fin, integridad, protección contra reproducción y, opcionalmente, confidencialidad para el tráfico de red. También se incluye un servicio de petición de negociación y administración de seguridad mediante el Internet Key Exchange (IKE, Intercambio de claves de Internet-RFC 2409), definido por el IETF. Una vez que los equipos del mismo nivel se han autenticado mutuamente, generan claves de cifrado en volumen con el fin de cifrar los paquetes de datos de las aplicaciones. Ambos equipos conocen estas claves, de manera que los datos se encuentran muy bien protegidos contra modificaciones o interpretaciones por parte de atacantes que pudieran actuar en la red.
Es importante hacer una pequeña diferencia entre una Red Privada y una Red Privada Virtual. La primera utiliza líneas alquiladas para formar toda la Red Privada. La segunda lo que hace es crear un túnel entre los dos puntos a conectar utilizando infraestructura publica.
Figura 4.6 Ejemplo de configuración de una VPN
4.2.1 Tipos de VPN's
4.2.1.1 Sistemas Basados en Hardware
Los sistemas basados en hardware, son routers que encriptan. Son seguros y fáciles de usar, simplemente necesitan conectarse y configurar algunas opciones según el tipo de red. Ofrecen un gran rendimiento, porque no malgastan ciclos de procesador haciendo funcionar un Sistema Operativo. Es hardware dedicado, muy rápido, y de fácil instalación.
4.2.1.2
Sistemas Basados en CortafuegosEstos se implementan con software de cortafuegos (Firewalls). Tiene todas las ventajas de los mecanismos de seguridad que utilizan los cortafuegos, incluyendo el acceso restringido a la red interna; también realizan la Traducción de Direcciones (NAT). Estos satisfacen los requerimientos de autentificación fuerte. Muchos de los cortafuegos comerciales, aumentan la protección, dando soporte al núcleo del Sistema Operativo en algunas deficiencias que traen consigo, y los provee de medidas de seguridad adicionales, que son mucho más útiles para los servicios de VPN. El rendimiento en este tipo decrece, ya que no se tiene hardware especializado de encriptación.
4.2.1.3
Sistemas Basados en SoftwareEstos sistemas son ideales para las situaciones donde los dos puntos de conexión de la VPN no están controlados por la misma organización, o cuando los diferentes cortafuegos o routers no son implementados por la misma organización. Este tipo de VPN's ofrecen el método más flexible en cuanto al manejo de tráfico. Con este tipo, el tráfico puede ser enviado a través de un túnel, en función de las direcciones o protocolos; en las VPN por hardware, todo el tráfico es enrutado por el túnel. Con los sistemas basados en software es posible hacer un enrutamiento inteligente de una manera mucho más fácil.
4.2.2 Requerimientos básicos de una Red Privada Virtual
Una Red Privada Virtual provee los siguientes mecanismos básicos, aunque en ocasiones y según las necesidades es posible obviar algunos:
• Autenticación de usuarios: para poder restringir el acceso a la VPN solo a los usuarios autorizados.
• Administración de direcciones: debe asignar una dirección del cliente sobre la red privada, y asegurar que las direcciones privadas se mantienen privadas.
• Encriptación de datos: los datos que viajan por la red pública, deben ser transformados para que sean ilegibles para los usuarios no autorizados.
• Administración de claves: debe mantener un sistema de claves de encriptación para los clientes y los servidores.
•
Soporte multiprotocolo: debe ser capaz de manejar protocolos comunes, usando las redes públicas, por ejemplo IP, IPX, etc.4.2.3 Como funciona una VPN
La tecnología de VPN se centra en el medio que hay entre las redes privadas y las redes públicas. El dispositivo intermediario, ya sea orientado a software, orientado a hardware o la combinación de ambos, actúa como una red privada. Cuando un host local manda un
paquete a una red remota, los datos primero pasan de la red privada por el gateway protegido, viajando a través de la red pública, y entonces los datos pasan por el gateway que esta protegiendo el host destino de la red remota. Una VPN protege los datos cifrándolos automáticamente antes de enviarlos de una red privada a otra, encapsulando los datos dentro de un paquete IP. Cuando estos llegan al destino, los datos son descifrados. El proceso es el siguiente:
•
Un equipo cliente llama a un ISP local y conecta a Internet.•
Un software especial cliente reconoce un destino especificado y negocia una sesión de VPN cifrada.• Los paquetes encriptados son envueltos en paquetes IP para crear el túnel y mandarlos a través de Internet.
•
El servidor de VPN negocia la sesión de VPN y descifra los paquetes.• El tráfico no encriptado fluye a otros servidores y recursos con normalidad.
El fuerte de los componentes en VPN es el cifrado. El objetivo es restringir el acceso a los usuarios y hosts apropiados, y asegurar que los datos transmitidos por Internet sean encriptados para que solo estos usuarios y los hosts sean capaces de ver los datos. La técnica usada es envolver las datos de carga encriptados, con cabeceras que pueden ser interpretadas por los enrutadores. Una vez conectado, una VPN abre un Túnel seguro, en el cual el contenido será encapsulado y encriptado y los usuarios son autentificados.
Pero por supuesto, todos estos mecanismos empleados, aumenta la seguridad en el intercambio de datos pero no añade una reducción en el rendimiento de la comunicación por las sobrecargas. Muchas VPN, ya sean basadas en hardware o en software, deberían ser capaces de procesar la encriptación en conexiones hasta al menos una velocidad de 10BaseT. En velocidades superiores, el consumo de CPU necesaria en las VPN basadas en software es tan elevado que el rendimiento decrece. El los sistemas orientados a hardware, que usan máquinas dedicadas estas velocidades aumentan. En conexiones como módems, el procesamiento en las VPN es mucho más rápido que los retardos introducidos por el ancho de banda disponible. Las pérdidas de paquetes y la latencia en conexiones a Internet de baja calidad afectan al rendimiento más que la carga añadida por la encriptación. En el Capítulo 5 se llevará a cabo la implementación a nivel de Laboratorio de este mecanismo, muy utilizado en la actualidad.