¿Qué me impide usar el envenenamiento ARP para forzar a un cliente a usar HTTP?

2

Así que solo estaba pensando en cómo se puede usar el envenenamiento ARP para interceptar una solicitud de clientes, falsificar un certificado SSL y enviarlo de vuelta, con la advertencia de no cumplir con la validación de certificados, pero ¿y si tuviera que interceptar una comunicación de cliente? , envíe un 301 a la versión http del sitio si la solicitud es SSL, y luego actúe en nombre del cliente cuando se comunique con el servidor legítimo a través de HTTPS.

si el cliente cree que yo soy el enrutador, ¿cómo sabría el cliente que fue forzado a HTTP?

Obviamente, la barra del navegador sería blanca, no verde, pero eso es casi un punto discutible, independientemente.

    
pregunta OneChillDude 17.04.2014 - 21:05
fuente

3 respuestas

3

Si la solicitud inicial del cliente es de HTTPS, entonces el cliente insistirá en realizar el protocolo de enlace SSL, y solo entonces, dentro del túnel SSL recién creado, el cliente enviará la solicitud HTTP real , a la que quieres responder con un código 301. Esto significa que si el cliente ingresó el https:// URL (ya sea que lo escribió o siguió un marcador que lo incluye), entonces, como atacante, aún tiene un SSL lanzado contra usted.

Por supuesto, si el cliente es propenso a hacer clic en las "advertencias del navegador", entonces todas las apuestas están desactivadas.

De forma similar, si el cliente siempre escribe el nombre del servidor sin procesar y espera que el servidor reciba la solicitud HTTP y envíe un redireccionamiento a HTTPS, entonces puede interceptar ese redireccionamiento y mantener al cliente en un sitio falso de HTTP puro. Siempre nos devuelve al cliente y lo que él está dispuesto a aceptar. Si el cliente realiza una solicitud HTTP (no HTTPS) en algún momento y no se da cuenta de la falta de un icono de candado o una barra de URL verde, entonces puede aprovechar ese único punto de vulnerabilidad para mantener al cliente en un mundo sin SSL. Interceptando todos los intentos de redireccionamiento a SSL. La automatización de este ataque se ha demostrado bajo el nombre sslstrip .

    
respondido por el Thomas Pornin 17.04.2014 - 21:22
fuente
1

Si el cliente escribe específicamente https en su navegador, entonces no podría hacer lo que dice, ya que el navegador primero solicitaría el certificado antes de permitirle enviar el redireccionamiento 301. No tiene un certificado válido para el dominio, por lo que el usuario verá una excepción de certificado.

Si el cliente no intenta inicialmente configurar una conexión HTTPS, sino que hace clic en un enlace HTTPS u obtiene un redireccionamiento HTTPS, hay muchas cosas que puede hacer. Una herramienta para automatizar esto es sslstrip .

    
respondido por el mikeazo 17.04.2014 - 21:17
fuente
0

Como señalaron los demás respondedores: si el cliente solicitó explícitamente una conexión HTTPS, entonces el ataque a la baja que usted describe no funcionará. Sin embargo, podría usar un tipo de ataque de envenenamiento ARP como un vector para una herramienta como sslstrip para transformar las redirecciones https y https enlaces a http. Es por eso que ahora tenemos cosas como HTTPS Everywhere y HSTS , para contrarrestar este tipo de ataques.

    
respondido por el mti2935 19.03.2016 - 21:47
fuente

Lea otras preguntas en las etiquetas