Dev.to Security 🔐 Cybersecurity 👁 0 📖 3 min read

El candado no significa lo que crees: qué protege realmente HTTPS

Hay una idea que hemos aprendido casi automáticamente al navegar por Internet: 🔒 Candado = página segura. Pero no es exactamente así. HTTPS puede ofrecer una conexión criptográficamente protegida con una página que, a

El candado no significa lo que crees: qué protege realmente HTTPS

Hay una idea que hemos aprendido casi automáticamente al navegar por Internet:

🔒 Candado = página segura.

Pero no es exactamente así.

HTTPS puede ofrecer una conexión criptográficamente protegida con una página que, aun así, pertenece a un atacante.

Entonces, ¿qué protege realmente HTTPS?

HTTPS protege la conexión

Cuando visitas una dirección que comienza con https://, HTTP funciona sobre TLS.

Antes de intercambiar normalmente el contenido de la página, navegador y servidor realizan un TLS handshake.

De forma simplificada, durante ese proceso deben resolver varias cosas:

cómo protegerán la comunicación;

cómo establecerán claves;

cómo comprobará el navegador la identidad del servidor;

y cómo sabrán si los datos fueron modificados.

El resultado es un canal protegido entre ambos extremos.

  1. Confidencialidad

Imagina que estás conectado a una red Wi-Fi y escribes una contraseña.

Sin protección criptográfica adecuada, alguien situado en el camino podría intentar observar el tráfico.

TLS cifra el contenido de la comunicación.

Eso significa que capturar los paquetes no debería permitir simplemente leer tu contraseña, una cookie de sesión o los datos HTTP intercambiados.

  1. Integridad

Cifrar no es suficiente.

También necesitamos saber que alguien no cambió los datos mientras viajaban.

Supongamos que una aplicación envía:

transferir 100.000 pesos

Un atacante situado en medio de la comunicación no debería poder transformarlo silenciosamente en:

transferir 1.000.000 de pesos

TLS utiliza mecanismos criptográficos que permiten detectar alteraciones en los datos protegidos.

  1. Autenticación

Aquí aparecen los certificados digitales.

El servidor presenta un certificado relacionado con el dominio que estás visitando y demuestra que posee la clave privada correspondiente.

Tu navegador comprueba, entre otras cosas, la cadena de confianza, el dominio y la validez del certificado.

Eso ayuda a evitar que cualquier servidor pueda simplemente afirmar:

“Yo soy ese sitio web”.

¿Y de dónde sale la clave para cifrar?

Esta es una de las partes más interesantes.

Al principio, navegador y servidor todavía no comparten el secreto que utilizarán para proteger la sesión.

Durante el handshake utilizan criptografía de clave pública e intercambio de claves para conseguir material secreto compartido.

Después pueden derivar claves de sesión.

Y una vez establecida la sesión, la mayor parte de la comunicación puede protegerse mediante criptografía simétrica, mucho más eficiente para grandes cantidades de datos.

Conceptualmente:

Navegador
↓
TLS handshake
↓
Certificado + autenticación
↓
Intercambio de claves
↓
Claves de sesión
↓
Canal HTTP protegido
↓
Servidor

Entonces… ¿qué significa realmente el candado?

Aquí está la distinción importante.

HTTPS puede decirte que estás manteniendo una conexión protegida con el dominio que aparece en tu navegador.

Pero no puede garantizar que la persona que creó ese dominio tenga buenas intenciones.

Un atacante puede registrar un dominio parecido al de un banco, obtener un certificado válido y construir una página de phishing.

Y entonces ocurre algo curioso:

TLS puede proteger perfectamente tu contraseña mientras viaja hacia el atacante.

La criptografía funcionó.

El problema estaba en que nosotros confiamos en el sitio equivocado.

HTTPS tampoco significa anonimato

TLS protege el contenido de la comunicación que transporta, pero no hace invisible toda tu actividad en Internet.

Direcciones IP, DNS, características de las conexiones y otros metadatos pueden seguir proporcionando información dependiendo de la arquitectura utilizada.

Por eso HTTPS es una pieza fundamental de la seguridad web, pero no es una capa mágica.

La próxima vez que veas el candado…

No pienses simplemente:

“Esta página es segura”.

Una interpretación mucho mejor sería:

“Mi navegador ha establecido un canal criptográficamente protegido con este dominio”.

Detrás de ese pequeño candado hay certificados, firmas digitales, intercambio de claves, criptografía simétrica y décadas de ingeniería de seguridad.

🎙️ Hice un episodio de menos de cuatro minutos de Tu Código Cotidiano donde Javier y Laura explican toda esta historia de forma conversacional:

https://tucodigocotidiano.yarumaltech.com/escuchar-podcast/que-protege-hoy-https/

Pregunta para la comunidad: ¿qué otra tecnología usamos todos los días pero casi nunca nos detenemos a pensar cómo funciona?

📰 Read the original article on Dev.to Security

Originally published by Dev.to Security. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.