¿El HTTPS no es inseguro sobre un enrutador pirateado? [duplicar]

6

He oído que un pirata informático puede convertirse en un proxy utilizando el enrutador al que está conectado su dispositivo y enviarle su propia clave pública en lugar de que usted obtenga la clave pública del servidor, que el navegador verificará con terceros y dirán este certificado no coincide con el dominio, y se mostrará un icono de error SSL.

Sin embargo, ¿qué sucede si el pirata informático también creó terceros falsos para todas las autoridades de certificación y confirmó para su dispositivo que sí, este es el certificado correcto para el dominio?

    
pregunta Muhammad Umer 13.06.2016 - 21:29
fuente

3 respuestas

15

Los navegadores no aceptan la verificación de cualquier tercero; Si lo hicieran todo el ejercicio sería en verdad inútil. Para ser aceptado como válido, el certificado presentado por el sitio web debe estar firmado digitalmente por una autoridad de certificados de confianza . La lista predeterminada de autoridades de certificación de confianza, que puede ver en Chrome yendo a Settings->Advanced->HTTPS/SSL->Manage Certificates->Trusted Root Certification Authorities , es limitada. Entrar en esta lista requiere pasar por un extenso proceso de investigación con los desarrolladores del navegador / sistema operativo.

Además, no es necesario que el navegador envíe una solicitud a la autoridad de certificación para verificar el certificado. El navegador ya posee las claves públicas de esas autoridades confiables (en Windows simplemente haga clic en View->Details para verlo), y una clave pública es todo lo que necesita para probar que una determinada entidad firmó un mensaje (que en este caso es un certificado) . Lea cómo funcionan las firmas digitales si desea comprender la lógica detrás de esto. Al igual que una firma en papel, una firma digital le permite confirmar que una entidad ha aprobado algo sin tener que comunicarse con esa entidad.

    
respondido por el tlng05 13.06.2016 - 21:45
fuente
4

La forma en que funcionan los certificados es que el sitio web envía un certificado a su computadora. Su navegador lee el certificado, buscando la identidad del "certificado de firma". A continuación, valida la firma del certificado descargado que fue creado por el certificado de firma. Si el certificado de firma está firmado por sí mismo, se denomina certificado raíz de confianza. Pero no cualquier antiguo certificado raíz de confianza servirá. El navegador solo confiará en los certificados que estaba configurado para aceptar cuando instaló el navegador. Estos certificados especialmente confiables conforman su almacén de certificados raíz de confianza, y pueden estar basados en el sistema operativo (Windows tiene un almacén de certificados utilizado por los navegadores Edge, IE y Chrome), o por navegador (Firefox viene con su propia lista preinstalada de autoridades de raíz confiables .)

El atacante tendría que inyectar primero un certificado raíz de confianza en el almacén de certificados raíz de confianza de su sistema operativo o la lista de autoridades de confianza de su navegador.

Las autoridades de confianza no se buscan dinámicamente desde la web mientras se navega. El proxy nunca manejaría los certificados de confianza, excepto como parte del paquete de instalación; y si el paquete de instalación fue modificado por el proxy, la firma del paquete fallaría y el sistema operativo debería mostrarte una advertencia de "paquete sin firmar" cuando lo instales.

    
respondido por el John Deters 13.06.2016 - 23:04
fuente
2

Tienes razón en tu primera declaración. A menos que él o ella sea una CA de confianza, su navegador todavía se quejará de que el certificado no es de confianza. Y sabrás que estás siendo MiTM'd.

Para el segundo párrafo, estás llegando un poco. El pirata informático tendría que comprometer el DNS para TODAS las CA y tener una forma de validar los certificados falsos. Altamente improbable.

    
respondido por el HashHazard 13.06.2016 - 21:37
fuente

Lea otras preguntas en las etiquetas