Con respecto a su primera pregunta: la respuesta depende de la definición de "transparente". Para mí, la intercepción transparente implicaría que los clientes no deben agregar manualmente certificados o autoridades de certificación al "almacén de confianza" de sus dispositivos. Mientras esta condición se mantenga y su navegador compruebe correctamente la validez del certificado presentado , un atacante no podrá interceptar su conexión, a menos que logren hacer una de las siguientes acciones:
- comprometa una de las CA en las que su dispositivo confía
- de alguna manera obtener una CA de confianza para firmar un certificado falsificado para un sitio que en realidad no posee
- manipular el almacén de confianza en su dispositivo
- o tome posesión de la clave privada de un servidor específico.
La razón por la que estos son los únicos vectores de ataque (de nuevo, si la verificación de validez se implementa correctamente en el lado del cliente) es que el servidor presentará un certificado (incluida la clave pública del servidor) que está firmado con la clave privada de alguna CA . El cliente verifica si la firma coincide con la clave pública que ha almacenado para la CA correspondiente, y si lo hace, inicia un protocolo de enlace TLS / SSL con el servidor. Es en un punto de este protocolo de protocolo de enlace que el cliente cifra cierta información específica de la conexión con la clave pública del servidor. Quienquiera que esté interceptando el mensaje tendrá que descifrar la información con la clave privada del servidor y enviarla de vuelta para demostrar que no es, de hecho, otra persona.
Con respecto a su segunda pregunta, no sé qué significa exactamente en la oración que citó. Lo que sé es que todos los navegadores modernos populares validan correctamente los certificados. Sin embargo, existe otro mecanismo interesante con respecto a la seguridad de los certificados que no ha adoptado todos los navegadores modernos, al menos hasta donde sé. Fijación de clave pública es un concepto relacionado con confianza en el primer uso : cuando visita un sitio web por primera vez, "fija" la clave pública que se le mostró en ese dominio y verifica si sigue siendo el mismo en visitas posteriores a la página. Esto protege contra los escenarios de ataque 1 y 2 descritos anteriormente: ya no tiene que preocuparse por la emisión de certificados falsos si solo vio el certificado legítimo una vez antes. La fijación de claves públicas no solo se puede realizar para servidores específicos, sino también para cualquier CA en la cadena de confianza. Para responder a su pregunta real, Chrome y Firefox pueden hacer la fijación de claves públicas (y probablemente hay otras, pero no conozco a cada una de ellas).