Clase 056 — TLS/SSL en profundidad

Parte: 2 — Criptografía aplicada · Fuente: Real-World Cryptography (Wong) e IETF RFC 8446 (TLS 1.3) ⏱️ Duración estimada: 130 min · Nivel: Avanzado


🎯 Objetivo

Entender cómo TLS combina todo lo aprendido (intercambio de claves, firmas, certificados, AEAD) en el protocolo que asegura la web. El alumno analizará el handshake de TLS 1.3, comparará con TLS 1.2, entenderá las cipher suites, la forward secrecy obligatoria y el 0-RTT, y aprenderá a auditar la configuración TLS de un servidor con herramientas reales.

📚 Resultados de aprendizaje

Al finalizar, el alumno podrá:

  1. Describir el handshake de TLS 1.3 y cómo deriva las claves de sesión.
  2. Comparar TLS 1.2 y 1.3 (rondas, cipher suites, forward secrecy).
  3. Interpretar una cipher suite y sus componentes.
  4. Auditar un servidor TLS con openssl s_client, testssl.sh y Wireshark.
  5. Detectar configuraciones débiles (protocolos viejos, cifrados inseguros).

🗺️ Temas

# Tema Por qué importa
1 Pila TLS (record, handshake) Estructura del protocolo
2 Handshake TLS 1.3 Núcleo de la seguridad
3 Cipher suites Qué algoritmos se negocian
4 Forward secrecy y 0-RTT Beneficios y riesgos
5 Diferencias con TLS 1.2 Migración y legado
6 Auditoría de servidor Práctica de seguridad
7 Ataques históricos (BEAST, POODLE) Por qué evolucionó

📖 Definiciones y características

🧰 Herramientas y preparación

openssl version
# testssl.sh (script de auditoría)
git clone --depth 1 https://github.com/testssl/testssl.sh

Audita solo servidores propios o con autorización explícita. Escanear sistemas ajenos puede ser ilegal.

🧪 Laboratorio guiado

  1. Inspecciona un handshake contra tu servidor de laboratorio:

```bash openssl s_client -connect lab.local:443 -tls1_3 -servername lab.local