Emo vídeopostado em seu site www.krackattacks.com, o pesquisador de segurança Mathy Vanhoef demonstrou que é possível fazer o downgrade de uma conexão HTTPS para HTTP e então interceptar as credenciais de logon.
Estou executando um pequeno servidor https (Apache, Ubuntu 16.04) e gostaria de configurá-lo de uma forma que rejeitasse qualquer tentativa de downgrade de solicitações HTTPS.
Como posso verificar se minha instância do Apache aceitaria e honraria uma solicitação do navegador para fazer downgrade de HTTPS para HTTP?
Como posso reconfigurar o Apache para rejeitar tais solicitações dos navegadores?
Existe uma razão para não fazer (2) acima? Posso pensar em oferecer suporte a usuários com navegadores antigos. Há mais alguma coisa que estou perdendo?
Responder1
Uma opção é simplesmente não permitir http apenas https.
A outra opção é usar HTTP Strict Transport Security.
Você pode fazer isso no Apache adicionando
Cabeçalho sempre definido Strict-Transport-Security "max-age=31536000; includeSubDomains"
Para o seu vhost habilitado para TLS. Você também deve redirecionar todas as solicitações feitas em http para https para garantir que isso seja mantido.