En realidad, ¿no es malo redirigir http a https? [duplicar]

6

Tengo una pregunta de dos partes sobre la pregunta # 570288 sobre ServerFault.

Pregunta:

  

¿Es malo redirigir http a https?

Respuesta aceptada (185 votos arriba):

  

[...] infierno no. Es muy bueno.

Parte 1

¿Es esa respuesta, bueno ... equivocada? :)

¿Estoy seguro de que, desde un punto de vista de seguridad, redirigir HTTP a HTTPS es una idea terrible para sus usuarios, que podrían saber muy poco acerca de la seguridad?

Según tengo entendido, las conversaciones HTTP se pueden MODIFICAR y su cliente no tendrá forma de saberlo.

Si el malvado intercepta su redirección HTTP 302 y la reemplaza por una redirección a evil.com, (incluso evil.com a través de HTTPS), el cliente no estará al tanto.

Esta es la razón por la cual los profesionales de la seguridad siempre han recomendado que marques la versión HTTPS de un sitio, o escribas https en la barra de direcciones, ¿verdad? (¿ HSTS mitiga esto? ¿ HTTPSEverywhere mitigar esto?)

Parte 2

¿Es esto lo suficientemente importante como para que hagamos lo posible para actualizar esa respuesta?

  • En este momento, esa pregunta aparece en la barra lateral de "Preguntas sobre redes calientes" en los sitios de la red StackExchange.
  • Hay una mención MITM, en un comentario enterrado en el medio de la página.
pregunta daveloyall 31.01.2014 - 00:46
fuente

2 respuestas

11

La redirección de HTTP a HTTPS no es algo malo. Lo que está mal es confiar en él como si fuera una característica de seguridad.

Esta redirección es un faro, destinado a permitir que los barcos perdidos en el mar en la tormenta entiendan dónde están y, con suerte, les brinden una mejor oportunidad de llegar a un refugio seguro. Nadie afirma que los faros hagan desaparecer la tormenta; simplemente mejoran las probabilidades de un final feliz para las malas condiciones.

Lo único malo que se puede decir acerca de una redirección automática de HTTP a HTTPS es que genera complacencia . Si un usuario se equivoca, por ejemplo al tratar de acceder al sitio web como HTTP en lugar de HTTPS, la redirección automática le permite persistir en sus formas equivocadas, ocultando el hecho de que su URL inapropiada lo expuso a la vengativa de los habitantes de Internet, algunos de los cuales son proactivamente malvados a veces. La desactivación de esta redirección podría interpretarse como más pedagógica . Sin embargo, este punto de vista es algo poco realista; la mayoría de los propietarios de sitios web no están en posición de educar a los usuarios . Lo que quieren es captar la atención de clientes potenciales . Si comienza a dificultar el acceso a su sitio web, simplemente desaparecerán; no serán educados en lo más mínimo, y las empresas sufrirán.

"Lo que no nos mata nos hace más fuertes". Una frase pegadiza de un filósofo loco más de la mitad; pero no necesariamente aplicable al público en general como una política educativa. El problema de hacer que las personas sean más fuertes al tratar de matarlos es que a veces tienes éxito, quiero decir que matarlas,

Como explica mr spuratic, para mejorar realmente las cosas, el navegador debería usar HTTPS de forma predeterminada; idealmente, toda la Web sería solo para HTTPS: si los navegadores prueban HTTPS primero pero recurren a HTTP en caso de errores, entonces un atacante activo puede simular el fallo y forzar un repliegue. DNSSEC, junto con los registros SRV apropiados, podría anunciar, de manera segura, que un servidor determinado solo se debe usar con HTTPS, pero esto funcionará de manera confiable solo cuando ... funcionará en todas partes (el mismo problema de arranque que IPv6).

Mientras tanto, una redirección llevará a las ovejas extraviadas al establo, incluso cuando las ovejas desconocen por completo a las bestias salvajes que vagan por el campo nocturno. Esto generalmente se considera un método más eficiente que tratar de enseñar a las ovejas a no alejarse.

    
respondido por el Tom Leek 31.01.2014 - 04:04
fuente
5

El problema es doble:

  • Hoy en día, no hay forma de que un sitio web (u otro servicio) defina definitivamente (por ejemplo, a través de un DNS autenticado) que solo brinda un servicio HTTPS (seguro) , nunca HTTP. Los registros de servicio ( _srv ) no hacen el trabajo (aunque el problema no se ignoró por completo, consulte la entrada https aquí ), y HSTS tiene un problema inevitable . La redirección inicial de HTTP a HTTPS es un mal necesario en la actualidad. HTTPS Everywhere (pruebe con HTTPS primero) es técnicamente una solución mejor, aunque cualquier solución que requiera la participación del usuario y / o un grado no trivial de competencia del usuario es sumamente limitada. sslstrip persistirá hasta que se solucione este problema. (DNSSEC tiene un problema de arranque similar, y funcionará hasta que el 99% de los dominios estén firmados, y el 100% de los solucionadores esperan que. DNS sea a menudo el elefante en la sala).
  • Además del problema de la redirección no autenticada (de manera efectiva), la redirección transparente incondicional a HTTPS puede ocultar problemas potenciales (por ejemplo, la generación de URL absolutas con el protocolo incorrecto: // prefijo cuando un HTTPS finaliza el equilibrador de carga / inversor-proxy Está en uso). Los atributos de seguridad de las cookies como "seguro" son curitas. Las facilidades para mantener una sesión HTTPS estrictamente HTTPS son imperfectas.

Por medio de un experimento mental: imagine si un cliente de SSH de manera útil y silenciosa, primero probó telnet. ¿Qué pasaría si una conexión SSH pudiera convertirse casi silenciosamente en una conexión de telnet a medio camino? ¿Qué tan popular sería este cliente entre los conscientes de la seguridad? Si siempre "solo funcionó" (y tuvo complementos / temas, etc.), ¿qué tan popular sería entre los agnósticos de seguridad? ¿En qué se diferencia de un navegador contemporáneo?

Aparte de los improbables requisitos de memoria, las inconsistencias de la IU gratuitas y las incesantes actualizaciones de fondo; esto debería ser evidente.

  

¿Es malo redirigir http a https?

HTTPS es bueno, pero confiar en que la redirección se realice a través de un transporte no autenticado, no cifrado y no verificable indica un grado de optimismo generalmente asociado con los clientes de las loterías nacionales.

  ¿

redirigir HTTP a HTTPS es una idea terrible [...]?

No es completamente cierto. Un usuario que siempre observa los indicadores de la interfaz de usuario de HTTPS tiene motivos razonables para creer que está en el lugar correcto y tiene ciertas protecciones. Sin embargo, sospecho que este no es el usuario modal.

Lo que es malo es que un administrador llegue a la conclusión ingenua de que habilitar HTTPS de alguna manera resuelve todos los problemas comunes de seguridad.

Esa triada molesta de autenticación , integridad , confidencialmente realmente es todo o nada ...

TL; DR: no es una idea terrible , es casi seguro que no resuelve los problemas que uno podría esperar, pero tampoco hay alternativas viables que los resuelvan. Simplemente imponer esto a sus usuarios probablemente solo tendrá un impacto en una fracción insignificante de ellos; ejecutar una campaña y educar a sus usuarios le dará mucho más.

    
respondido por el mr.spuratic 31.01.2014 - 03:25
fuente

Lea otras preguntas en las etiquetas