Reindirizzamento da HTTP a HTTPS, posso impedire di dare l'URL?

1

Sì, ancora un'altra domanda sul reindirizzamento da HTTP a HTTPS. Ma questo parla di una situazione abbastanza bizzarra.

Questa è una domanda successiva su Sicurezza di un reindirizzamento iniziale da http://example.com a https://example.com e Link da una pagina Http a una pagina Https - si tratta di un problema di sicurezza? . Dopo aver letto entrambi mi sono preoccupato per un piccolo trucco che uso cercando di prevenire:

  1. I problemi descritti nella prima domanda.
  2. Eliminare gli URL a cui l'utente ha accesso.

Il mio scopo originale con questo hack era perché un URL del modulo http://example.org/article/<hash>/some-country-does-something-bad/ restituiva

HTTP/1.1 301 Moved Permanently
Location: https://example.org/article/<hash>/some-country-does-something-bad/

Elimina le informazioni che questo articolo esiste realmente nella pagina.

Invece restituisco questo (più o meno, con tutto il bloat rimosso):

HTTP/1.1 404 Not Found

<!DOCTYPE html>
<html>
<head></head>
<body>
    Please visit the page securely at
    <a href="https://example.org">https://example.org</a>.
</body>
</html>

Ma ora sono vulnerabile a SSLstrip. Peccato.

Note:

  • Eseguo questo perché la maggior parte della pagina è disponibile tramite HTTP, ma alcuni contenuti sensibili non lo sono.
  • Non riesco a passare completamente la pagina a HTTPS perché gli inserzionisti (il font del reddito, quindi è abbastanza importante) non supportano TLS .
  • Non uso HSTS.
  • Non ho mai impostato cookie in HTTP e tutti i cookie sono contrassegnati come secure .
  • Il <hash> è in realtà sha1 del contenuto dell'articolo, a meno che tu non abbia un link che non puoi semplicemente scansionare URL casuali.
  • Gli utenti (beh, la maggior parte) sono abbastanza intelligenti da capire che hanno bisogno di cambiare l'URL a mano.

Domanda

Posso liberarmi del problema SSLstrip? O forse c'è un modo migliore per eseguire questo?

(Probabilmente c'è un modo migliore, questa cosa è terribilmente hacky, ma non potrei pensare a un modo più intelligente per farlo funzionare)

    
posta grochmal 29.08.2016 - 00:01
fonte

1 risposta

4

Se hai bisogno di proteggerti contro un MITM allora l'https + HSTS completo è l'unico modo, non funziona in quel modo.

Per quanto riguarda il reindirizzamento 301 che rivela che l'articolo esiste non è proprio vero. Il reindirizzamento può (e di solito avviene) prima che vengano eseguite ulteriori azioni sulla richiesta. Se l'articolo non esiste, puoi inviare la risposta 404 dopo il reindirizzamento.

    
risposta data 29.08.2016 - 01:11
fonte

Leggi altre domande sui tag