Estoy creando una API de Flask y no estoy familiarizado con las superficies de ataque que existen al redirigir de HTTP a HTTPS, o al solicitar HTTP cuando el encabezado HSTS se ha enviado anteriormente.
Digamos que un usuario solicita la ruta user@pass:<url>/ping
sobre HTTP. Pueden ser:
- Redirigido a HTTPS, sin darse cuenta de que sus solicitudes HTTP siempre se redirigen, lo que significa que pueden seguir haciéndolo.
- Bloqueado. Todos los intentos de HTTP se sirven con una respuesta "prohibida" de algún tipo. Se darán cuenta, ya que no pueden acceder al punto final, pero supongo que los datos enviados aún se revelan.
Si un usuario envía una solicitud con el encabezado de Autenticación básica a través de HTTP, y se redirige a HTTPS, ya sea como reescritura o con HSTS en su lugar, ¿no se ha revelado la información?
Si es así, me imagino que bloquear HTTP sería una forma más efectiva de decirle al usuario que deje de solicitar la ruta HTTP. La redirección nunca puede hacer que dejen de usar HTTP para la solicitud inicial.
Tengo la sensación de que podría malinterpretar alguna característica de la redirección que aún preserva la seguridad de los datos que se envían ...