¿Cómo es posible interceptar mi propio tráfico HTTPS?

2

Tengo un pequeño malentendido en la forma en que funciona TLS. Sé que puedo usar Burpsuite Proxy para interceptar el tráfico HTTPS proveniente de mi navegador. ¿Cómo es esto posible cuando el servidor va a ver el proxy como el navegador? Por lo tanto, todo lo relacionado con la criptografía y el handshake sucederán allí y mi navegador solo recibirá y enviará tráfico sin saberlo.

Supongo que la pregunta más definitiva que estoy formulando es, ¿cómo el uso de Burpsuite sin un certificado autofirmado rompe la conexión TLS y cómo el auto certificado soluciona esto?

    
pregunta Felipe Warrener-Iglesias 17.08.2018 - 13:02
fuente

2 respuestas

4

Cuando no atacas el tráfico usando MITM, TLS funciona así:

Client <===========> Server

Cuando ataca el tráfico utilizando MITM, obtiene un tercero para interceptar y la comunicación proxy

Client <=====> Proxy <======> Server

La seguridad se negocia por separado entre client <==> proxy y proxy <==> server . Un proxy mantendrá dos conexiones abiertas: una con el cliente y otra con el servidor. Esto suele ser utilizado por los proveedores de AV, malware y productos de filtrado empresarial. Si un cliente confía en el certificado del proxy, lo más probable es que un navegador no resalte el hecho de que está hablando con un proxy en lugar de con un servidor real. Verá una barra verde en un navegador para indicar que la comunicación está cifrada. Si hace clic en el certificado, verá el certificado proxy , en lugar del certificado real server . Obviamente, esto no funciona si fijación de certificados está involucrada.

Si el cliente no confía en proxy certificate (que suele ser el caso a menos que instale específicamente proxy cert en su almacenamiento de certificados de confianza), verá un error de certificado.

Hay algunas publicaciones en línea que hablan sobre Burp, por ejemplo esta :

  

Certificado de CA Burp: dado que Burp rompe las conexiones SSL entre sus   navegador y servidores, su navegador mostrará por defecto una advertencia   mensaje si visita un sitio HTTPS a través de Burp Proxy. Esto es porque el   El navegador no reconoce el certificado SSL de Burp, e infiere que   su tráfico puede estar siendo interceptado por un atacante externo. A   Utilice Burp de manera efectiva con conexiones SSL, realmente necesita instalar   El certificado maestro de Burp's Certificate Authority en su navegador, por lo que   que confíe en los certificados generados por Burp.

    
respondido por el oleksii 17.08.2018 - 15:40
fuente
2

Supongamos que desea acceder a la página de inicio de SomeService a través de un proxy HTTPS. Usted comienza haciendo una conexión entre usted y su proxy. Entonces su proxy hace una conexión entre él y SomeService. Tu proxy es el hombre del medio, pero está bien porque eres consciente de esto y lo quieres.

Su proxy no tendrá problemas para comunicarse con SomeService (es solo una conexión HTTPS normal sin MitM), pero su navegador tendrá problemas para comunicarse con el proxy. Esto se debe a que escribió " enlace " en su navegador, y en lugar de obtener una respuesta de SomeService, obtuvo una respuesta de su proxy.

Su navegador sabe que algo está mal, porque esperaba un certificado firmado por alguien en quien confía que fue entregado a SomeService, pero en cambio recibió un certificado firmado por Burpsuite (que no es de confianza por defecto) que dice "esto es totalmente SomeService .com ". Luego, su navegador le mostrará un error, diciendo que no tiene idea de quién firmó este certificado y de que probablemente lo estén espiando.

La solución es instalar un certificado raíz de Burpsuite. Cuando lo instala, está diciendo que confía en cualquier certificado firmado por Burpsuite, que le permite interceptar su tráfico sin generar alarmas.

    
respondido por el Burak 17.08.2018 - 16:00
fuente

Lea otras preguntas en las etiquetas