jueves, 30 de octubre de 2008

IPSec

Definición

IPsec (Internet Protocol security) es un conjunto de protocolos cuya función es asegurar las comunicaciones sobre el Protocolo de Internet (IP) autenticando y/o cifrando cada paquete IP en un flujo de datos. IPsec también incluye protocolos para el establecimiento de claves de cifrado. [1]

IPsec es un protocolo que está sobre la capa del protocolo de Internet (IP). Le permite a dos o más equipos comunicarse de forma segura (de ahí el nombre). La “pila de red” IPsec de FreeBSD se basa en la implementación KAME, que incluye soporte para las dos familias de protocolos, IPv4 e IPv6. [2]

IPSec provee servicios similares a SSL, pero a nivel de redes, de un modo que es completamente transparente para sus aplicaciones y mucho más robusto. Es transparente porque sus aplicaciones no necesitan tener ningun conocimiento de IPSec para poder usarlo. Puede crear tuneles cifrados (VPNs), o simple cifrado de ordenadores.

Servicios ofrecidos por IPsec

El protocolo de internet actual (IP), también conocido como IPv4, no provee por sí mismo de ninguna protección a sus transferencias de datos.

IPSec intenta remediarlo. Estos servicios vienen tratados como dos servicios distintos, pero IPSec ofrece soporte para ambos de un modo uniforme.

Confidencialidad

Asegura que sea difícil para todos comprender qué datos se han comunicado, excepto para el receptor, de manera que nadie vea las contraseñas cuando ingrese en una máquina remota a través de Internet.

Integridad

Garantiza que los datos no puedan ser cambiados en el camino. En el caso de una línea que lleve datos sobre facturación, será imprescindible que las cantidades y cifras de contabilidad son las correctas, y que no han podido ser alteradas durante el tránsito.

Autenticidad

Firma los datos de modo que otros puedan verificar que es realmente el remitente quien los envió, asegurando así su autenticidad.

Protección a la réplica

Asegura que una transacción sólo se puede llevar a cabo una vez, a menos que se autorice una repetición de la misma. [3]

El protocolo también proporciona las ventajas siguientes:

  • Compatibilidad con la infraestructura de claves públicas. También acepta el uso de certificados de claves públicas para la autenticación, con el fin de permitir relaciones de confianza y proteger la comunicación con hosts que no pertenezcan a un dominio Windows 2000 en el que se confía.
  • Compatibilidad con claves compartidas. Si la autenticación mediante Kerberos V5 o certificados de claves públicas no es posible, se puede configurar una clave compartida (una contraseña secreta compartida) para proporcionar autenticación y confianza entre equipos.
  • Transparencia de IPSec para los usuarios y las aplicaciones. Como IPSec opera al nivel de red, los usuarios y las aplicaciones no interactúan con IPSec.
  • Administración centralizada y flexible de directivas mediante Directiva de grupo. Cuando cada equipo inicia una sesión en el dominio, el equipo recibe automáticamente su directiva de seguridad, lo que evita tener que configurar cada equipo individualmente. Sin embargo, si un equipo tiene requisitos exclusivos o es independiente, se puede asignar una directiva de forma local.
  • Estándar abierto del sector. IPSec proporciona una alternativa de estándar industrial abierto ante las tecnologías de cifrado IP patentadas. Los administradores de la red aprovechan la interoperabilidad resultante. [4]

Aplicaciones de IPSEC


1. Redes Privadas Virtuales sobre Internet entre sucursal y oficina central.

2. PC remoto accede en forma segura a la compañía a través de internet.

3. Conectividad extranet e intranet con partners.

En la figura 1 se muestra las aplicaciones más importantes que se aportan a la empresa.

Protocolos que dan soporte a IPSec

AH - Cabecera de autenticación

El protocolo AH protege la integridad del datagrama IP. Para conseguirlo, el protocolo AH calcula una HMAC basada en la clave secreta, el contenido del paquete y las partes inmutables de la cabecera IP (como son las direcciones IP). Tras esto, añade la cabecera AH al paquete. La cabecera AH se muestra en Figure 2.

Figure 2. La cabecera AH proteje la integridad del paquete

La cabecera AH mide 24 bytes. El primer byte es el campo Siguiente cabecera. Este campo especifica el protocolo de la siguiente cabecera. En modo túnel se encapsula un datagrama IP completo, por lo que el valor de este campo es 4. Al encapsular un datagrama TCP en modo transporte, el valor correspondiente es 6. El siguiente byte especifica la longitud del contenido del paquete. Este campo está seguido de dos bytes reservados. Los siguientes 4 bytes especifican en Índice de Parámetro de Seguridad (SPI). El SPI especifica la asociación de seguridad (SA) a emplear para el desencapsulado del paquete. El Número de Secuencia de 32 bit protege frente a ataques por repetición. Finalm

ente, los últimos 96 bit almacenan el código de resumen para la autenticación de mensaje (HMAC). Este HMAC protege la integridad de los paquetes ya que sólo los miembros de la comunicación que conozcan la clave secreta pueden crear y comprobar HMACs.

ESP - Carga de Seguridad Encapsulada

El protocolo ESP puede asegurar la integridad del paquete empleando una HMAC y la confidencialidad empleando cifrado. La cabecera ESP se genera y añade al paquete tras cifrarlo y calcular su HMAC. La cabecera ESP consta de dos partes y se muestra en Figure 3.

Figure 3. La cabecera ESP

Los primeros 32 bits de la cabecera ESP especifican el Índice de Parámetros de Seguridad (SPI). Este SPI especifica qué SA emplear para desencapsular el paquete ESP. Los siguientes 32 bits almacenan el Número de Secuencia. Este número de secuencia se emplea para protegerse de ataques por repetición de mensajes. Los siguientes 32 bits especifican el Vector de Inicialización (IV - Initialization Vector) que se emplea para el proceso de cifrado. Los algoritmos de cifrado simétrico pueden ser vulnerables a ataques por análisis de frecuencias si no se emplean IVs. El IV asegura que dos cargas idénticas generan dos cargas cifradas diferentes. [5]

Modos de funcionamiento de IPSec

El diseño de IPSec plantea dos modos de funcionamiento para sus protocolos: transporte y túnel. La diferencia radica en la unidad que se esté protegiendo, en modo transporte se protege la carga útil IP (capa de transporte), en modo túnel se protege los paquetes IP (capa de red).

Se pueden implementar tres combinaciones:

  • AH en modo transporte.
  • ESP en modo transporte.
  • ESP en modo túnel (AH en modo túnel tiene el mismo efecto que en modo transporte).

El modo transporte se aplica a nivel de Hosts.AHy ESP en este modo interceptarán los paquetes procedentes de la capa de transporte a la capa de red y aplicarán la seguridad quehaya sido configurada. En la figura 4 se aprecia un esquema de IPSec en modo transporte, si la política de seguridad define que los paquetes deben ser encriptados, se utiliza ESP en modo transporte, en caso que solo haya sido requerida autenticación, se utiliza AH en modo transporte.

.

Figura 4. Hosts A y B implementando ESP en modo transporte

Los paquetes de la capa de transporte como TCP y UDP pasan a la capa de red, que agrega el encabezado IP y pasa a las capas inferiores; cuando se habilita IPSec en modo transporte, los paquetes de la capa de transporte pasan al componente de IPSec (que es implementado como parte de la capa de red, en el caso de sistemas operativos),el componente de IPSec agrega los encabezados AH y/o ESP,y la capa de red agrega su encabezado IP. En el caso que se apliquen ambos protocolos, primero debe aplicarse la cabecera de ESP y después de AH, para que la integridad de datos se aplique a la carga útil de ESP que contiene la carga útil de la capa de transporte, esto se ilustra en la figura 5.

Figura 5. Formato del paquete con AH y ESP

El modo túnel se utiliza cuando la seguridad es aplicada por un dispositivo diferente al generador de los paquetes, como el caso de las VPN, o bien,cuando el paquete necesita ser asegurado hacia un punto seguro como destino y es diferente al destino final, como se ilustra en la figura 6, el flujo de tráfico es entre A y B, e IPSec puede aplicarse con una asociación de seguridad entre RA y RB, o bien, una asociación de seguridad entre A y RB

.


Figura 6. Aplicación de IPSec en modo túnel

IPSec en modo túnel, tiene dos encabezados IP, interior y exterior. El encabezado interior es creado por el host y el encabezado exterior es agregado por el dispositivo que está proporcionando los servicios de seguridad. IPSec encapsula el paquete IP con los encabezados de IPSec y agrega un encabezado exterior de IP como se ilustra en la figura 7. [6]

Figura 7. Formato del paquete aplicando IPSec en modo tunel

Diferencia entre IPv4 e IPv6

IPv4 es la versión 4 del Protocolo de Internet (IP o Internet Protocol) y constituye la primera versión de IP que es implementada de forma extensiva. IPv4 es el principal protocolo utilizado en el Nivel de Red del Modelo TCP/IP para Internet. Fue descrito inicial mente en el RFC 791 elaborado por el Grupo de Trabajo en Ingeniería de Internet (IETF o Internet Engineering Task Force) en Septiembre de 1981, documento que dejó obsoleto al RFC 760 de Enero de 1980. [7]

La actual Internet no estaba preparada para absorber el enorme y creciente tráfico que se iba a producir y mucho menos para responder al número de direcciones IP necesarias para todos estos nuevos usuarios y terminales de acceso. Así,los organismos encargados de velar por el correcto funcionamiento de la Red impulsaron en 1994 un debate conocido como IP Next Generation. El objetivo no era otro que encontrar una nueva arquitectura, una nueva Internet que hiciese frente a las necesidades de la Sociedad de la Información.

El resultado de estas investigaciones y estudios se conoce como IPv6, el nuevo protocolo IP al que ya se ha bautizado como “la Internet del nuevo milenio”. [3]

Ipv4 utiliza direcciones de 32 bits (4 bytes) que limita el número de direcciones posibles a utilizar a 4,294,967,295 direcciones únicas. Sin embargo, muchas de estas están reservadas para propósitos especiales como redes privadas, Multidifusión (Multicast), etc. Debido a esto se reduce el número de direcciones IP que realmente se pueden utilizar, es esto mismo lo que ha impulsado la creación de IPv6 (actualmente en desarrollo) como reemplazo eventual dentro de algunos años para IPv4. [7]

Ipv6 incrementa el tamaño de direcciones IP de 32 a 128 bits, ampliando de forma extraordinaria el número de posibles direcciones y haciendo así posible la conectividad de todo dispositivo a la red con una dirección unívoca y permanente. Además, soporta autoconfiguración (PLUG&PLAY) y permite etiquetado de flujos y priorización, lo que hace posible introducir toda clase de servicios y aplicaciones multimedia en tiempo real, de forma que se gestione eficientemente su facturación. Otra de las ventajas que presenta el nuevo protocolo es la seguridad, puesto que incluye, de forma obligatoria e intrínseca en su núcleo, la especificación de seguridad IPSec, uno de los más famosos "parches" que se le añadió a IPv4. [3]

Conclusiones

IPSec es un estándar de seguridad extraordinariamente potente y flexible. Su importancia reside en la seguridad. Gracias a IPSec ya es posible el uso de redes para aplicaciones críticas, como las transacciones comerciales entre empresas. Al mismo tiempo, es la solución ideal para aquellos escenarios en que se requiera seguridad, independientemente de la aplicación, de modo que es una pieza esencial en la seguridad de las redes.

IPSec es el nuevo marco de seguridad IP, definido con el advenimiento del IPv6. Aunque IPv6 está muy poco difundido en este momento, la tecnología marco IPSec se está utilizando ya, lo que asegura, entre otras cosas, la interoperatividad entre sistemas de diversos fabricantes y sistemas operativos, como Linux, windows macintosh, firewalls y routers comerciales. IPSec integra confidencialidad, integridad y autentificación en un mismo marco interoperante por lo que es la opción escogida para la implementación de las VPN.

Referencias Bibliográficas

[1] http://es.wikipedia.org/wiki/IPsec
[2] http://www.freebsd.org/doc/es_ES.ISO8859-1/books/handbook/ipsec.html
[3] http://asignaturas.diatel.upm.es/seguridad/IPv6eIPSec.htm
[4] http://fferrer.dsic.upv.es/cursos/Windows/Avanzado/ch10s02.html
[5] http://www.ipsec-howto.org/spanish/x161.html
[6] http://biblioteca.uct.cl/tesis/flores-henriquez/tesis.pdf
[7]http://www.linuxparatodos.net/portal/staticpages/index.php?page=introduccion-ipv4



1 comentario:

Angélica Ramírez S. dijo...

Hola muchachas, excelente su trabajo, muy bien presentado y resumido. Las felicito.!!!
Ahora a leer todo el material para prepararse para la evaluación. Ya falta poquito para terminar!!!