Estoy tratando de entender cómo pasar por alto la protección de HSTS. He leído sobre herramientas de LeonardoNve ( enlace y enlace ). Pero no lo entiendo.
- Si el cliente solicita por primera vez el servidor, funcionará en cualquier momento, porque sslstrip simplemente eliminará el campo de encabezado
Strict-Transport-Security:
. Así que está bien. - ¿Si no? ¿Lo que pasa? ¿Intentará el cliente conectarse automáticamente al servidor con HTTPS? En ese caso, MITM es inútil, ¿no es así?
Mirando el código, obtengo que SSLstrip2 cambiará el nombre de dominio de los recursos que necesita el cliente, por lo que el cliente no tendrá que usar HSTS ya que estos recursos no están en el mismo dominio (¿es cierto?) . El cliente enviará una solicitud de DNS que la herramienta DNS2proxy interceptará y devolverá las direcciones IP para el nombre de dominio real. Al final, el cliente solo hará un HTTP de los recursos que debería haber hecho de una manera HTTPS.
Ejemplo: a partir de la respuesta del servidor, el cliente deberá descargar mail.google.com. El atacante cambia eso a gmail.google.com, por lo que no es el mismo (sub) dominio. Luego, el cliente solicitará DNS para este dominio, DNS2proxy responderá con la IP real de mail.google.com. El cliente simplemente solicitará este recurso a través de HTTP.
Lo que no entiendo es antes de eso: ¿Cómo puede el atacante usar HTML-strip mientras que la conexión debe ser HTTPS del cliente al servidor?