Sto creando un'API Flask e non conosco le superfici di attacco esistenti nel reindirizzamento da HTTP a HTTPS, o richiedendo HTTP quando l'intestazione HSTS è stata inviata in precedenza.
Diciamo che un utente richiede il percorso user@pass:<url>/ping
su HTTP. Possono essere:
- Reindirizzato a HTTPS, non rendendosi necessariamente conto che le loro richieste HTTP vengono sempre reindirizzate, il che significa che possono continuare a farlo.
- Bloccato. Tutti i tentativi di HTTP sono serviti con una risposta "proibita" di qualche tipo. Si renderanno conto, poiché non possono accedere all'endpoint, ma suppongo che i dati inviati siano ancora rivelati.
Se un utente invia una richiesta con l'intestazione di autenticazione di base su HTTP e viene reindirizzato a HTTPS, sia come riscrittura o con HSTS in posizione, le informazioni non sono ancora state rivelate?
Se è così, immagino che bloccare l'HTTP sarebbe un modo più efficace per dire all'utente di smettere di richiedere la rotta HTTP. Il reindirizzamento potrebbe non causarne mai l'interruzione effettiva dell'utilizzo di HTTP per la richiesta iniziale.
Ho la sensazione che potrei fraintendere alcune funzionalità del reindirizzamento che conserva ancora la sicurezza dei dati inviati ...?