Man in the middle usando HTTPs effettua il downgrade a HTTP

Oct 25 2020

In generale, i browser tentano di stabilire una connessione HTTP, se possibile. Come forzeresti un browser a eseguire il fallback su HTTP quando qualcuno inserisce asdf.xyz nella barra di ricerca del suo browser senza specificare un protocollo?

Pertanto: sslstrip probabilmente non è utile in quanto non ci sono collegamenti a "fake". Inoltre, si presume che il sito non utilizzi HSTS.

Supponendo che si possa eseguire MITM, come verrebbe eseguito il routing con iptables / quali comandi occorrono per far credere al browser che HTTP non è disponibile e per eseguire il fallback su HTTP?

Risposte

5 mti2935 Oct 25 2020 at 21:03

Penso che tu possa avere un leggero malinteso nella premessa della tua domanda. Se il sito non utilizza HSTS e l'utente accede example.comalla barra degli indirizzi del proprio browser, per impostazione predefinita il browser sarà http://example.com, no https://example.com.

Vedi le seguenti domande su security.stackexchange.com e altrove su stackexchange.com, per ulteriori informazioni su questo comportamento:

Perché i browser utilizzano per impostazione predefinita http: e non https: per gli URL digitati?

Perché HTTPS non è il protocollo predefinito?

https://superuser.com/questions/799464/how-does-a-web-browser-know-if-destination-is-http-or-https

Questo è precisamente il motivo per cui ora abbiamo HSTS . HTTPS Everywhere è un altro tentativo di risolvere questo problema.