Diga que hay dos servidores que realizan TLS. Ambos servidores tienen certificados de punto final válidos. En otras palabras, ninguno de ellos emitirá una advertencia de los navegadores después de que se haya establecido la conexión.
¿Hay alguna forma de que la autenticación del cliente solicitada por un servidor pueda abusarse para crear una conexión válida con el otro servidor? Para TLS 1.2, la autenticación final se realiza utilizando el mensaje Finished
que contiene verify_data
, que se calcula sobre todos los mensajes de intercambio. ¿Es esto suficiente para evitar un ataque de intermediario incluso si hay un servidor malicioso de confianza en juego? ¿Qué pasa con los protocolos anteriores TLS 1.1, 1.0 y SSLv3?
Uno de los dos servidores puede considerarse malicioso. El servidor malintencionado puede usar la misma dirección web con un certificado de cliente válido de una cadena y clave privada diferente. Cualquier conjunto de cifrado es válido, aunque los que normalmente están habilitados en los navegadores tienen, por supuesto, preferencia a un atacante. No creo que importe mucho, pero supongamos que la autenticación del cliente se realiza mediante certificados X509v3 con PKCS # 1 v1.5 con SHA-256 como algoritmo de firma.