He leído RFC 5746 en la extensión de renegociación segura TLS. Sin embargo, no entiendo cómo soluciona el problema.
Se requiere que el cliente y el servidor incluyan los datos_controides del protocolo de enlace anterior en los mensajes de ClientHello y ServerHello. La solución protege contra un atacante que es un MITM activo. ¿No podría este atacante simplemente incluir su Verify_data en el ClientHello que intercepta del cliente (recuerde, todo esto está sin firmar, el intercambio de claves está en marcha) y quitar la verificación del servidor ServerHello con la que responde? De esta manera, el servidor pensará que se está realizando una renegociación segura, mientras que el cliente verá un campo vacío de conexión renegociada que se corresponde con el hecho de que está iniciando una nueva conexión.
Mi razonamiento debe ser incorrecto, ¿alguien puede señalarlo?