Man in the middle usando HTTPs downgrade para HTTP

Oct 25 2020

Em geral, os navegadores tentam estabelecer uma conexão HTTPs, se possível. Como você forçaria um navegador a retroceder para HTTP quando alguém inserir asdf.xyz na barra de pesquisa de seu navegador sem especificar um protocolo?

Portanto: sslstrip provavelmente não é útil, pois não há links para "fake". Além disso, presume-se que o site não usa HSTS.

Supondo que se possa executar MITM - como o roteamento com iptables seria executado / quais comandos você precisaria para fazer o navegador acreditar que HTTPs não está disponível e retornar ao HTTP?

Respostas

5 mti2935 Oct 25 2020 at 21:03

Acho que você pode ter um leve mal-entendido na premissa de sua pergunta. Se o site não usar HSTS e o usuário inserir example.comna barra de endereço do navegador, o navegador será, por padrão http://example.com, não https://example.com.

Consulte as seguintes perguntas em security.stackexchange.com e em outros lugares em stackexchange.com para obter mais informações sobre esse comportamento:

Por que o padrão dos navegadores é http: e não https: para URLs digitados?

Por que HTTPS não é o protocolo padrão?

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

É exatamente por isso que agora temos o HSTS . HTTPS Everywhere é outra tentativa de resolver esse problema.