Ocultar SNI claro cuando se usa https

6

Un servidor con la dirección IP a.b.c.d está alojando múltiples sitios web SSL.

Al conectarse a cada sitio web, un navegador apropiado envía una solicitud que incluye el host de destino en un texto claro sin cifrar conocido como SNI, como example.com .

Después de una conexión SSL exitosa, el resto de los datos se transmiten con el certificado correspondiente.

El problema es que el SNI enviado por el navegador se podrá registrar en cualquier MITM y, por lo tanto, será bloqueado por un gobierno.

¿Cómo puedo evitar que el otro extremo descubra qué sitio web estoy visitando en el servidor?

(Obviamente no utilizando VPN o proxies)

    
pregunta DRS David Soft 27.03.2017 - 02:15
fuente

3 respuestas

12

No es posible ocultar la información de SNI si el servidor requiere que sirva el certificado adecuado. Hubo discusión sobre el cifrado de esta información en TLS 1.3. Pero esta idea se abandonó ya que requeriría establecer una capa de cifrado adicional y, por lo tanto, agregar una sobrecarga adicional al establecimiento de la conexión. Aparte de eso, esta información podría filtrarse de todas formas debido a las búsquedas de DNS y, por supuesto, también a través del certificado que envía el servidor, que también está en claro. Por lo tanto, si desea proteger mejor su privacidad, necesita usar una capa de cifrado adicional, como una VPN.

Para más detalles vea también

respondido por el Steffen Ullrich 27.03.2017 - 06:24
fuente
3
  

¿Cómo puedo evitar que el otro extremo descubra qué sitio web estoy visitando en el servidor?

     

(Obviamente no utilizando VPN o proxies)

Has identificado el método principal.

Teóricamente, puede enviar un nombre de host como parte de SNI y otro diferente en el encabezado de host HTTP. Sin embargo, Apache al menos le impide hacer esto .

    
respondido por el Xiong Chiamiov 27.03.2017 - 02:43
fuente
3

Es posible que pueda enviar la solicitud sin SNI.

Siempre y cuando el servidor de destino no tenga aplicaciones de red SSL (por ejemplo, un equilibrador de carga SSL no descifrado o un proxy inverso) que use SNI para redirigir las conexiones al servidor correcto, y el servidor tenga un único certificado SAN o comodín que cubre todos los servicios alojados allí, el servidor debe poder manejar solicitudes sin SNI.

    
respondido por el Lie Ryan 27.03.2017 - 05:09
fuente

Lea otras preguntas en las etiquetas