[Dr.WoW] [No.39] Mecanismos SSL VPN - parte 1

116 0 0 1

1 Ventajas de SSL VPN

Internet se ha desarrollado de manera rápida e impredecible, y ahora se puede decir que "las conexiones de red están disponibles en cualquier lugar y en cualquier momento". Si bien las computadoras personales y las computadoras portátiles son ubicuas, ya se las considera demasiado pesadas e inconvenientes, y ahora todos tienen un teléfono inteligente o tableta, lo que les permite disfrutar del acceso a Internet en cualquier momento y en cualquier lugar. Los tiempos cambian y los avances en ciencia y tecnología continúan, pero lo que sigue siendo el mismo es el concepto de que la ciencia y la tecnología están centradas en las personas, las personas buscan más conveniencia, simplicidad y seguridad. Para escenarios de uso específicos que involucran conexiones remotas y acceso a redes internas, han aparecido algunas fisuras en la tecnología VPN tradicional, IPSec:

·         Redes inflexibles. Al construir una VPN IPSec, si se agregan equipos o se modifica la política de IPSec del usuario, es necesario ajustar la configuración de IPSec existente.

 

·         El software del cliente debe instalarse para las VPN IPSec, lo que conlleva una gran cantidad de problemas en términos de compatibilidad, implementación y mantenimiento.

 

·         IPSec no es lo suficientemente estricto con respecto al control de acceso del usuario; IPSec solo puede realizar el control de la capa de red, pero no puede realizar el control de acceso granular de los recursos de la capa de aplicación.

 

Como dice el dicho, "hay un camino por cada montaña; si hay un problema, debe haber una solución", y en consecuencia, un nuevo tipo de tecnología ha comenzado a tomar el centro del escenario: Secure Sockets Layer VPN (SSL VPN), un nuevo La solución liviana de acceso remoto que resuelve efectivamente los problemas mencionados y tiene una aplicación muy amplia en las soluciones de acceso remoto del mundo real.

 

·         SSL VPN opera entre la capa de transporte y la capa de aplicación, y no cambia los encabezados de IP o TCP ni afecta la topología de red existente. Si se implementa un firewall en la red, una VPN SSL solo requiere que el HTTPS tradicional (puerto 443) esté habilitado en el firewall.

 

·         SSL VPN utiliza la arquitectura del navegador / servidor. Por lo tanto, SSL VPN no requiere aplicaciones cliente, y solo requiere un navegador para facilitar su uso.

NOTA:

Aunque SSL VPN no requiere la instalación de clientes adicionales, las características de SSL VPN tienen requisitos explícitos con respecto al navegador y al tipo y versión del sistema operativo. Para requisitos específicos por favor revise los documentos del producto.

·         Más importante aún, en comparación con el control de la capa de red IPSec, todo el control de acceso en una VPN SSL se basa en la capa de la aplicación, y el nivel de granularidad puede alcanzar la URL o los niveles de archivo, lo que puede mejorar considerablemente la seguridad del acceso remoto.

 

A continuación, el Dr. WoW llevará a todos a una introducción detallada de la tecnología SSL VPN.

 

2 escenarios de uso de VPN SSL

La llamada tecnología SSL VPN es en realidad un nombre creado por los proveedores de VPN y se refiere a los usuarios conectados remotamente que utilizan la función SSL incorporada en los navegadores web estándar para conectarse a un servidor VPN SSL en una intranet empresarial, tras lo cual el servidor VPN SSL puede reenviar paquetes a un servidor interno específico, lo que permite a los usuarios conectados de forma remota acceder a recursos del servidor especialmente designados dentro de la empresa después de pasar la autenticación. En este escenario, los usuarios conectados remotamente y los servidores VPN SSL utilizan el protocolo SSL estándar para cifrar los datos transmitidos entre ellos, lo que equivale a establecer un túnel entre el usuario conectado remotamente y el servidor VPN SSL.

 

En general, los servidores SSL VPN se implementan detrás de FW en la salida; el escenario de uso típico para SSL VPN se muestra en la Figura 1-1.

 

Figura 1-1 Escenario de uso típico para SSL VPN.

034848kl1ntr6srsr6ucsn.png

 

NOTA:

 

Los usuarios conectados de forma remota se llamarán en lo sucesivo "usuarios remotos".

 

Las familias de firewalls USG2000 / 5000/6000 de Huawei pueden servir directamente como servidores SSL VPN, conservando los costos de construcción y administración de la red. Si bien tengo la oportunidad, permítame decir una palabra en nombre de Huawei, que ha lanzado las series especializadas SVN2000 y SVN5000 de productos de servidor VPN SSL. Estos brindan soporte para un mayor número de usuarios, y admiten soluciones SSL VPN para un mayor número de escenarios de uso.

 

En esta sección, presentaré principalmente el establecimiento de una conexión entre usuarios remotos y un servidor VPN SSL, así como el proceso de inicio de sesión exitoso en el servidor VPN SSL. La forma en que los servidores SSL VPN reenvían las solicitudes de usuarios remotos a varios servidores internos se presentará en las secciones siguientes.

 

Antes de comenzar una introducción teórica bastante aburrida, proporcionaré una demostración de los pasos necesarios para iniciar sesión en un servidor VPN SSL, de modo que se pueda observar visualmente la facilidad y conveniencia de las VPNs SSL.

 

Los pasos que generalmente intervienen en el acceso de usuarios remotos de un servidor SSL VPN son extremadamente simples, como se muestra en la Tabla 1-1.

 

Tabla 1-1 Pasos para el acceso de usuarios remotos de un servidor SSL VPN.

 

Paso

Descripcion detallada

1

Abra el navegador, entre la direccion https://SSL VPN server address:   port o https://domain, para iniciar una conexión.

2

La página web puede dar un recordatorio de que hay un problema con el   certificado de seguridad para el sitio web que se va a acceder, pero   seleccionaremos "continuar a este sitio web".

3

La interfaz de inicio de sesión del servidor SSL aparece   correctamente. El lado derecho de la interfaz solicita que se ingrese el   nombre de usuario / contraseña.

4

Ingrese el nombre de usuario / contraseña (previamente obtenido del   administrador de la red de la empresa), inicie sesión exitosamente en el   servidor VPN SSL e ingrese a la página de acceso a los recursos de la   intranet.

 

¿Pueden estos pocos pasos garantizar el establecimiento de una conexión VPN SSL y un acceso seguro? ¿Por qué hay un recordatorio de que hay un problema con el certificado de seguridad de la dirección web al que se debe acceder? Estoy seguro de que hay muchas preguntas en la mente de todos ahora. Con estas preguntas en mente, exploraremos cómo los usuarios remotos intercambian paquetes con el servidor SSL VPN en estos breves pasos.

 

Creo que hay dos claves involucradas en esto, que también muestran dos características básicas de seguridad de la tecnología SSL VPN:

 

1. Seguridad del proceso de transmisión.

 

En la definición antes mencionada de SSL VPN, mencionamos que los usuarios remotos y los servidores SSL VPN utilizan el protocolo SSL estándar para cifrar los datos transmitidos entre ellos. El protocolo SSL comienza a funcionar desde que un usuario abre su navegador y accede a la dirección del servidor VPN SSL. Por lo tanto, debemos explorar los mecanismos a través de los cuales opera el protocolo SSL con más detalle.

 

2. Seguridad de las identidades de los usuarios.

 

En la demostración anterior de inicio de sesión en los servidores SSL VPN, el usuario remoto accedió a la interfaz de inicio de sesión del servidor VPN SSL y el servidor VPN SSL solicitó que se ingresara el nombre de usuario / contraseña. Este es en realidad el servidor SSL VPN que solicita la autenticación de la identidad del usuario. Los servidores SSL VPN generalmente admiten múltiples tipos de métodos de autenticación de usuarios para garantizar la seguridad y la legitimidad del acceso. Los firewalls de Huawei admiten múltiples métodos para autenticar nombres de usuario / contraseñas, incluida la autenticación local, la autenticación del servidor, la autenticación de certificado, la autenticación de dos factores (nombre de usuario / contraseña + certificado), etc.

 

3 mecanismos de funcionamiento del protocolo SSL

SSL es un tipo de protocolo que establece una ruta segura entre clientes y servidores. Es un protocolo de seguridad basado en aplicaciones web desarrollado por la empresa Netscape y proporciona cifrado de datos, autenticación de servidor, integridad de la información y autenticación de cliente opcional para protocolos de aplicación basados en conexiones TCP / IP (como HTTP, Telnet y FTP, etc.) . Esto quiere decir que el protocolo SSL tiene las siguientes características:

 

·         Todos los datos que se transmitirán se cifrarán para su transmisión, de modo que los terceros no puedan escuchar a escondidas.

 

·         Posee mecanismos de verificación, por lo que las dos partes que se comunican descubrirán inmediatamente cualquier manipulación de información.

 

·         Está equipado con un certificado de identidad para evitar que se falsifiquen las identidades.

 

El protocolo SSL se ha desarrollado continuamente desde su lanzamiento en 1994. Las versiones SSL 2.0 y SSL 3.0 lanzadas por la compañía Netscape se han utilizado ampliamente. Después de esto, una organización de estandarización de Internet lanzó el protocolo TLS 1.0 (también conocido como SSL 3.1) basado en SSL 3.0, y luego lanzó las versiones TLS1.1 y TLS 1.2. En la actualidad, la mayoría de los navegadores principales ahora admiten TLS 1.2. Los firewalls de Huawei son compatibles con las versiones SSL 2.0, SSL 3.0 y TLS 1.0.

 

La estructura del protocolo SSL se compone de dos capas. La capa inferior es el protocolo de registro SSL, y la capa superior tiene el protocolo de protocolo de enlace SSL, el protocolo de especificación de cifrado de cambio SSL y el protocolo de alerta SSL; los roles de cada protocolo son los que se muestran en la Figura 1-2.

 

Figura 1-2 Estructura y usos del protocolo SSL.

034907maowtet2tql15z2b.png

Por lo tanto, es obvio que el establecimiento de una conexión SSL se basa principalmente en el protocolo de enlace SSL, y más adelante exploraremos el protocolo de enlace SSL en detalle.

 

El enfoque de diseño básico del protocolo de enlace SSL se puede resumir en una breve oración: transmite texto cifrado mediante un algoritmo de cifrado de clave pública. O, para poner las cosas de otra manera, el servidor le comunica su clave pública al cliente, luego el cliente usa la clave pública del servidor para cifrar la información, y después de que el servidor recibe el texto cifrado, usa su propia clave privada para el descifrado.

Hay dos problemas con este enfoque de diseño que requieren soluciones más refinadas:

 

1. Cuando el servidor comunica su clave pública al cliente, ¿cómo se puede garantizar que la clave pública no haya sido manipulada?

 

Solución: incorporar un certificado digital. Ingrese la clave pública del servidor en el certificado del servidor, con el servidor enviando el certificado al cliente. Mientras el certificado sea confiable, la clave pública puede ser confiable.

 

2. La seguridad del algoritmo de cifrado de la clave pública es alta, sin embargo, dado que los dos dispositivos terminales utilizan claves privadas para el descifrado, el algoritmo es relativamente complicado y el uso de computación para el cifrado y descifrado es alto. ¿Cómo se puede aumentar la eficiencia?

 

Solución: incorporar una nueva "clave de sesión". El cliente y el servidor negocian la "clave de sesión" utilizando un algoritmo de cifrado de clave pública, y los paquetes de datos subsiguientes usan esta "clave de sesión" para el cifrado y descifrado (esto también se conoce como algoritmo de cifrado simétrico). La velocidad de computación es muy rápida cuando se usa un algoritmo de cifrado simétrico, lo que permite un gran aumento en la eficiencia de computación del cifrado y descifrado.

 

Para explicar las cosas con más detalle, "la clave de sesión" es en realidad una clave secreta compartida por el servidor y el cliente. Se denomina "clave de sesión" porque incorpora el concepto de sesión. Cada conexión SSL basada en TCP está asociada con una sesión, y la sesión se crea mediante el protocolo de protocolo de enlace SSL. Esto proporciona un cifrado de transmisión completo para cada conexión, y significa que el proceso de intercambio se incluye en la sesión.

 

Dado que el diseño del protocolo de protocolo de enlace SSL ya ha resuelto las preguntas clave, a continuación, cubriremos detalles específicos del diseño: el enfoque de diseño mencionado anteriormente se logra a través de cuatro comunicaciones entre el servidor y el cliente, lo que garantiza una transmisión de paquetes cifrada segura y altamente eficiente. Se puede realizar siguiendo la etapa de apretón de manos.

 

El contenido específico de las cuatro comunicaciones involucradas en el protocolo de enlace SSL se muestra en la Figura 1-3. Es importante tener en cuenta que todas las comunicaciones en esta etapa son de texto claro.

 

Figura 1-3 Proceso de protocolo de enlace SSL.

034920vz700yzy0hwy9h0w.png

 

3. Cliente envía solicitud (Client Hello)

 

El cliente (generalmente el navegador) primero envía una solicitud de comunicación cifrada al servidor. La información principal proporcionada al servidor en este paso es la siguiente:

 

(1) La versión del protocolo compatible, por ejemplo, la versión 1.0 de TLS.

 

(2) Un número aleatorio generado por el cliente, que se utilizará un poco más tarde para generar la "clave de sesión".

 

4. Respuesta del servidor (servidor Hola)

 

Después de recibir la solicitud del cliente, el servidor envía una respuesta al cliente. Este paso incluye la siguiente información:

 

(1) Confirmación de la versión del protocolo de comunicación criptográfica que se está utilizando, por ejemplo, la versión 1.0 de TLS. Si la versión compatible con el navegador y el servidor no son las mismas, entonces el servidor cierra la comunicación cifrada.

 

(2) Un número aleatorio generado por el servidor, que se usará un poco más tarde para generar la "clave de sesión".

 

(3) Confirmación de la suite de cifrado.

 

(4) Un certificado del servidor que contiene la clave pública del servidor.

 

NOTA:

 

El protocolo de enlace SSL es compatible con la autenticación bidireccional entre el cliente y el servidor. Si el servidor necesita verificar el cliente, el servidor debe enviar una solicitud de autenticación de certificado con respecto al cliente en este paso.

 

5. Respuesta del cliente

 

Una vez que el cliente recibe la respuesta del servidor, primero autentica el certificado del servidor. Si el certificado no ha sido emitido por una institución confiable, o si el nombre de dominio del certificado y el nombre de dominio real no son los mismos, o si el certificado ha caducado, se mostrará una alerta en la que se puede elegir continuar o no continuar la comunicación. Si no hay ningún problema con el certificado, el cliente extraerá la clave pública del servidor del certificado. A continuación, enviará los siguientes tres elementos de información al servidor:

 

(1) Una clave pre-maestra compuesta de números aleatorios, encriptada usando la clave pública del servidor. Esto evita las escuchas ilegales, y la clave pre-maestra se utilizará momentáneamente para generar la "clave de sesión". En este momento, el cliente tendrá tres números aleatorios y podrá calcular la "clave de sesión" que se utilizará para esta sesión.

 

(2) Un aviso de especificación de cambio de código, que expresa que toda la información futura se enviará utilizando el método de cifrado y la clave privada negociada por las dos partes.

 

(3) El aviso de finalización del protocolo de enlace del cliente, que expresa que la etapa del protocolo de enlace del cliente ya ha finalizado. Al mismo tiempo, este es el valor HASH para todo el contenido enviado anteriormente, utilizado para la autenticación del servidor.

 

6. La respuesta final del servidor.

 

Una vez que el servidor recibe la clave pre-maestra aleatoria del cliente, calcula y genera la "clave de sesión" que se utilizará para esta sesión (el método de cálculo y los resultados calculados son los mismos que los del cliente). Después de esto, a continuación, la información final se envía al cliente:

 

(1) Un aviso de especificación de cambio de código, que expresa que toda la información futura se enviará utilizando el método de cifrado y la clave secreta negociada por las dos partes.

 

(2) El mensaje de finalización del protocolo de enlace del servidor, que expresa la etapa de protocolo de enlace del servidor.

 

Ahora que todos han terminado de revisar el contenido específico de las cuatro comunicaciones del protocolo de protocolo de enlace SSL, creo que es probable que hayan surgido algunas preguntas adicionales. Como siempre, estoy listo para servir:

 

(1) Cuando aparece la clave pre-maestra aleatoria, el cliente y el servidor ya tienen tres números aleatorios, y los dos utilizan el método de cifrado previamente negociado para generar cada uno la misma "clave de sesión" que se usará en esta sesión. ¿Por qué se deben usar tres números aleatorios para generar la "clave de sesión"?

 

Respuesta: Está claro que el uso del algoritmo de cifrado de clave pública de los tres números aleatorios para obtener la clave secreta simétrica final se realiza para aumentar la seguridad. La razón por la que existe la clave pre-maestra es porque el protocolo SSL no confía en que cada host pueda generar números aleatorios "completamente aleatorios". Si los números aleatorios no son aleatorios, entonces es posible inferirlos, creando problemas de seguridad. Y, tres 'números aleatorios falsos' reunidos están muy cerca de ser aleatorios.

(2) Durante la segunda comunicación del de enlace SSL, cuando el servidor responde (servidor hola), envía su propio certificado, y el cliente realiza la verificación del certificado de los servidores de inmediato; es decir, que el cliente verifica la legitimidad de los servidores. ¿Se relaciona esto con la alerta encontrada en 1.Figure 1-1Table 1-1 cuando demostramos que iniciamos sesión en el servidor VPN SSL que "hay un problema con el certificado de seguridad de este sitio web"?

 

Respuesta: En realidad, el protocolo SSL comienza a operar cuando el cliente (el usuario remoto) accede al servidor VPN SSL a través de HTTPS en el paso 1 de 1.Figure 1-1Table 1-1. El aviso en el paso 2 simplemente corresponde a la segunda comunicación del protocolo de protocolo de enlace SSL: en este momento, el servidor envía su propio certificado local al cliente, y el cliente debe llevar a cabo la autenticación del certificado del servidor. La aparición de la alerta indica que el cliente cree que el certificado de este servidor no es confiable. Si aparece este recordatorio durante nuestro acceso diario a la banca en línea y otras interfaces similares, debemos aumentar nuestra vigilancia para evitar el ingreso erróneo de sitios web de phishing. Sin embargo, por ahora elegiremos exigir confianza para este sitio web.

 

Mi explicación de los mecanismos operativos del protocolo de protocolo de enlace SSL ya está completa. Respire hondo: todavía tenemos que probar los principios detrás de esto desde un punto de vista práctico.

 

                               Paso 1 Use un servidor de seguridad como servidor VPN SSL y complete la configuración relacionada en el servidor de seguridad.

 

La funcionalidad del servidor SSL en un servidor de seguridad se denomina puerta de enlace virtual. La dirección / nombre de dominio de la puerta de enlace virtual es la dirección / nombre de dominio del servidor VPN SSL.

 

a. Configure la puerta de enlace virtual, habilite la función del servidor VPN SSL, configure la dirección del servidor, etc.

 

segundo. Configure el método de autorización de autenticación como autenticación local y cree el usuario (incluida la configuración del nombre de usuario y la contraseña).

 

do. Configurar políticas de seguridad para garantizar el interfuncionamiento de redes. Introduciremos métodos para configurar políticas de seguridad en "8.7 Configurar políticas de seguridad".

 

                               Paso 2 Siga los pasos proporcionados al principio de este capítulo que demuestran el inicio de sesión del cliente en el servidor VPN SSL, y use el nombre de usuario / contraseña configurados para iniciar sesión en el servidor VPN SSL.

 

a.       El cliente 10.108.84.93 inicia una solicitud de conexión utilizando un navegador IE para la puerta de enlace virtual del servidor de seguridad https://10.174.64.61. En la siguiente figura, los números 21-29 muestran el proceso completo de reconocimiento de cuatro comunicaciones SSL. Después de que el servidor responde con su Mensaje de servidor finalizado (ya encriptado; hay una nota de que se trata de un mensaje de enlace cifrado) en el No. 29, aparece la interfaz de alerta que indica que el certificado de seguridad tiene un problema. En este punto, el cliente y el servidor no han comenzado la comunicación normal, pero se encuentran en la etapa de intercambio de SSL. El cliente ha verificado que el servidor no es legítimo, y la interfaz web del cliente ha preguntado al usuario si desea continuar navegando en este sitio web.

034944pda5xr7aaaaqdaks.png

b.       To mandate trust, select "continue to this website". Beginning with No. 103, the client requests to use a new session, and again initiates the SSL handshake protocol. After handshake completion, normal encrypted communication is begun, and continues until the user's browser successfully loads the firewall's virtual gateway's user login interface.

034955xti53qmz51qrjyzi.png

c.       The user name/password are entered. Beginning with No. 1561, SSL handshake protocol initiation is continued. Following the four communications, the "session key" is negotiated, and beginning with the packet carrying the user name/password, all data between the user and the server is encrypted (shown as 'Application Data') and sent to the server.

035014fcobgg1w7phirpd4.png


  • x
  • convención:

Responder

Responder
Debe iniciar sesión para responder la publicación Inicio de sesión | Registrarse

Aviso Aviso: Para garantizar sus legítimos derechos e intereses, la comunidad y los terceros no publicarán contenido que pueda generar riesgos legales a las partes, por ejemplo, pornografía, contenido político, contenido sobre juego, consumo y tráfico de drogas, así como contenido que viole los derechos de propiedad intelectual de terceros, por ejemplo, secretos comerciales, marcas, derechos de autor, patentes y privacidad personal. No comparta su cuenta ni su contraseña con terceros. Todas las operaciones realizadas usando su cuenta se considerarán como sus acciones y todas las consecuencias que estas acciones generen serán responsabilidad suya. Para obtener información detallada, consulte la “ Política de privacidad.”
Si el botón para adjuntar no está disponible, actualice Adobe Flash Player con la versión más reciente
¡Ingresa y disfruta de todos los beneficios para los miembros!

¡Ingresa y disfruta de todos los beneficios para los miembros!

Aterrizaje