Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2
OpenVPN
Comparativas protocolos VPN
Existen varios servicios que nos permite crear túneles
seguros en GNU/Linux
OpenVPN: Es una solución basada en el User space que
es mas portable y fácil de configurar y la conectividad se
basa en software: openSSL
Conectividad punto-a-punto con validación, jerárquica de
usuarios,
Resulta una muy buena opción en tecnologías de redes
inalámbricas y soporta una amplia configuración, entre ellas
balanceo de cargas. http://www.openvpn.net/
3
OpenVPN
Sirve para otros sistemas Operativos: Windows y Mac Os
Permite establecer túneles de nivel 2 o 3 sobre
UDP(recomendado) o TCP
Garantiza confidencialidad, autenticidad e integridad
Emplea interfaces tun o tap
TUN: El controlador TUN emula un dispositivo punto a punto,
es utilizado para crear túneles virtuales operando con el
protocolo IP. Se puede encapsular todos los paquetes que se
transporten a través de él como datagramas TCP o UDP
TAP: Simula una interfaz de red Ethernet, más comúnmente
conocido como modo puente o bridge, estos túneles virtuales
encapsulan directamente paquetes ethernet. Pueden
conectarse a un mismo servidor y virtualmente formar parte
de la red principal
4
OpenVPN
OpenVPN 2.0 amplia las capacidades de OpenVPN 1.x
permite que múltiples clientes puedan conectarse al
proceso servidor de VPN mediante un puerto TCP o UDP.
Punto a Punto: Conexión segura entre dos equipos
Punto a Multipunto: Permite conectar varios equipos al
servidor OpenVPN y redirigir las peticiones remotas a la
red interna
Modo Puente: Cuando se establece una conexión segura
entre dos subredes separadas
5
OpenVPN
Autenticación con VPN
Muchos creen que lo fundamental en la seguridad de VPN es el
cifrado, pero el mayor problema es la autenticación.
Autenticación en el contexto VPN implica “firmar” cada
paquete con un hash seguro, de tal forma que el receptor
puede probar la fuente legítima.
OpenVPN (también IPSec) usa la construcción de HMAC para
autenticar los paquetes.
Pero después de aplicar HMAC, somos aún vulnerables a dos
tipos de ataques activos:
Replay attacks.
6
OpenVPN
Problema: Replay Attacks
Accedemos a un banco mediante VPN y hacemos unas
transferencias monetarias.
Mediante el timing analysis, accedemos a los paquetes cifrados
que representan las transferencias monetarias.
Se podría hacer spam de estas transferencias sin conocer el
algoritmo de cifrado, mientras el banco no tenga protección de
replicación.
Solución: Incorporar en cada paquete un ID único o
un sello de tiempo antes de firmarlo.
7
OpenVPN.
Vulnerabilidades de OpenSSL
http://www.cvedetails.com/vendor/217/Openssl.html
8
OpenVPN.
Vulnerab. por Protocolos e Implementaciones
https://www.openssl.org/news/vulnerabilities.html#y2017
Freak Attack: (CVE-2015-0204 Marzo 2015),
vulnerabilidad relacionada con el protocolo SSL/TLS
Permite al atacante interceptar y modificar
transmisiones entre clientes y servidores vulnerables y
forzarlos a usar cifrado débil.
Son vulnerables servidores que aceptan cipher-suite
RSA_EXPORT. Algunos ejemplos
https://freakattack.com/#alexa
Se elimina la vulnerabilidad con el Upgrade de OpenSSL
version 1.02
Los clientes VPN también deben comprobarse las cipher-
suite que ofrecen. Se pueden comprobar en:
https://freakattack.com/clienttest.html
9
Taller práctico
¿Empezamos a
trabajar con
OpenVPN?
16
SSL/TLS
17
SSL/TLS
18
SSL/TLS
Ejemplo TLS1.2
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
ECDHE indicates the key exchange algorithm
RSA authentication mechanism during the handshake
AES session cipher
128 session encryption key size (bits) for cipher
GCM type of encryption (cipher-block dependency and additional
options).
SHA (SHA2)hash function. Message Authentication Algorithm
256 Digest size (bits)
19
SSL/TLS
Ciphersuites en TLS1.3
Solo hay 5 ciphersuites (todos cifrados simetricos son AEAD
Cipher Mode)
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
TLS_AES_128_CCM_8_SHA256
TLS_AES_128_CCM_SHA256
El algoritmo para certificados debe ser RSA o ECDSA
El algoritmo para el intercambio debe ser DHE o ECDHE
Los cipher suites se nombran combinando dos partes:
Bulk Encryption Algorithms (AES, CHACHA20)
MAC Algorithms
20
SSL/TLS
Handshake
21
SSL/TLS
Ciphersuites en TLS1.3
Tipos de certificados: RSA (PKCS#1) o ECDSA/EdDSA
ECDSA/EdDSA: Las curvas elipticas permiten misma seguridad
con claves más pequeñas y menos complejidad de calculo
ECDSA: secp384r1, secp521r1, P-256
EdDSA: ED25519, ED448
Las firmas y claves de EdDSA (utiliza las llamadas curvas elípticas
de Edwards) son computacionalmente menos costosas que las de
ECDSA. Además ambos elementos en EdDSA son más pequeños
en tamaño que su contraparte ECDSA. En ECDSA para firmar hay
parámetros que deben ser aleatorios, si se usa siempre el mismo o
son predecibles, la clave privada se podría descubrir.
Key exchange mechanism: DHE o ECDHE (como DHE pero
basado en algebraic curves para generar las claves)
Con RSA o ECDSA/EdDSA se pude usar DHE o ECDHE
22
Taller práctico
¿Seguimos
trabajando con
OpenVPN?
23
VPN en Dispositivos Móviles
Con una VPN podremos utilizar redes WiFi abiertas desde
nuestro smartphone
Configuración de VPN Cliente en sistemas Android
Activar la Wifi en su dispositivo y conéctese a Internet a
través de su proveedor
Ajustes de VPN
24
VPN en Dispositivos Móviles
Open-VPN
25
Taller práctico
¿Seguimos
trabajando con
OpenVPN?
28
VPN Personales
Interés particular por proteger tu privacidad
(anonimización de tus acciones para tu ISP y otros
sitios)
Redes
Públicas
ISP
Proxy Seguro
o VPN Personal Atención con el
throughput, SLA
para estos
dispositivos
29
VPN Personales
Protege de snoopers en Wi-Fi redes públicas, hoteles,
aerpuertos, oficinas corporativas.
Trabaja en PC y Mac, incluyendo los sistemas operativos
más recientes.
Accede a contenidos privados sin censura; firewalls bypass.
En países con conexiones Internet controladas, puede ser
ilegal el uso de VPN personales para acceder a Internet.
Usar VPN Personal con tu móvil asegura la transmisión
de datos, pero el proveedor telefónico guarda todavía tu
localización por el punto al que te conectas.
A VPN ayuda a que tu información se transmita segura,
pero no asegura la información en la máquina del cliente
o en el servidor remoto.
30
Webgrafía
OpenVPN
https://openvpn.net/
https://openvpn.net/community/
https://openvpn.net/community-resources/
OpenSSL
https://www.openssl.org/
EasyRSA
https://github.com/OpenVPN/easy-rsa
31