É amplamente aceito que o HTTPS é muito mais seguro que o HTTP. Entretanto, se você estiver encontrando a mensagem “HSTS missing from HTTPS server”, então este protocolo pode estar colocando o seu site em risco.
Felizmente, é possível fechar esta grave lacuna de segurança. Mesmo que você não tenha encontrado esta mensagem de erro, qualquer site que redireciona do HTTP para HTTPS é vulnerável a esta exploração. Portanto, ainda é sábio adotar uma abordagem proativa e corrigir esta falha.
Neste artigo, vamos explorar o que o erro “HSTS Missing From HTTPS Server” é e porque ele é uma preocupação tão grande para qualquer site que usa HTTPS redireciona. Então mostraremos a você como corrigir este problema e enganar os hackers, em cinco passos fáceis.
Confira nosso guia em vídeo para corrigir o erro “HSTS missing From HTTP Server”
Uma introdução ao wrro “HSTS Missing From HTTPS Server”
Para ajudar a manter os visitantes seguros, não é raro que os sites realizem redirecionamento HTTPS. Este redirecionamento encaminha os visitantes de uma versão HTTP para uma versão HTTPS do site.
Um usuário pode entrar explicitamente no HTTP na barra de endereços do seu navegador, ou seguir um link que aponte para uma versão HTTP do site. Nestes cenários, um redirecionamento pode evitar que terceiros maliciosos roubem os dados do visitante.
No entanto, nenhuma tecnologia é perfeita. Se o seu site usa HTTPS redireciona, então você pode estar suscetível a um ataque Man-In-The-Middle (MITM) conhecido como Secure Sockets Layer (SSL) Stripping. Como parte deste ataque, o hacker irá bloquear o pedido de redirecionamento e impedir que o navegador carregue o seu site sobre o protocolo HTTPS. Como resultado, o visitante irá acessar seu site via HTTP, o que torna muito mais fácil para os hackers roubarem dados.
Alternativamente, o atacante pode interceptar o redirecionamento e encaminhar os visitantes para uma versão clone do seu site. Neste ponto, o hacker pode roubar quaisquer dados que o usuário compartilhe, incluindo senhas e informações de pagamento. Alguns hackers também podem tentar enganar os visitantes para que eles façam o download de softwares maliciosos.
Também é possível para hackers roubarem um cookie de sessão por uma conexão não segura, em um ataque conhecido como sequestro de cookies. Estes cookies podem conter uma riqueza de informações, incluindo nomes de usuário, senhas e até mesmo detalhes de cartão de crédito.
Para proteger seus visitantes contra estes ataques, nós recomendamos habilitar o HTTP Strict Transport Security (HSTS). Este protocolo força o navegador a ignorar qualquer solicitação direta e carregar seu site sobre HTTPS.
O protocolo HSTS (e porque você pode querer usá-lo)
HSTS é uma diretiva de servidor e política de segurança web. Especificado pela Internet Engineering Task Force (IETF) na RFC 6797, o HSTS estabelece regulamentos para como os agentes do usuário e navegadores da web devem lidar com suas conexões para um site rodando sobre HTTPS.
Às vezes, um scan de segurança de TI pode informar que seu site está com “falta de cabeçalhos HSTS” ou “HTTP Strict Transport Security”. Se você encontrar este erro, então seu site não está usando HSTS, o que significa que seus redirecionamentos HTTPS podem estar colocando seus visitantes em risco.
Isto é classificado como uma vulnerabilidade de risco médio. No entanto, é incrivelmente comum e representa low hanging fruit para os atacantes. Se você encontrar este erro, então é crucial que você o corrija.
Ao adicionar o Security Headers HSTS ao seu servidor, você pode forçar o seu site a carregar no protocolo HTTPS. Isto pode ajudar a proteger seu site contra o sequestro de cookies e ataques de protocolo. Já que você está potencialmente removendo um redirecionamento do procedimento de carregamento, seu site também pode carregar mais rápido.
Há uma chance de você não ter encontrado este erro, mas você ainda está preocupado com o HSTS. Se você não tem certeza se você tem o HSTS ativado, você pode escanear seu site usando uma ferramenta como os Security Headers. Basta digitar a URL do seu site e então clicar em Scan.
Os Security Headers irão verificar o seu site e exibir todos os cabeçalhos aplicados na seção Cabeçalhos. Se a Strict-Transport-Security fizer uma aparição, então seu site estará protegido. Entretanto, se este cabeçalho não estiver listado, então nós temos algum trabalho a fazer.
Como corrigir o erro “HSTS Missing From HTTPS Server” (em 5 passos)
Para os hackers, a vulnerabilidade do HSTS é a oportunidade perfeita para roubar dados ou enganar seus visitantes para que realizem ações perigosas. Veja aqui como ativar a política do HSTS e manter seu site seguro.
Passo 1: Crie um backup manual
A habilitação da política do HSTS representa uma mudança significativa no seu site. Por esta razão, recomendamos a criação de um backup sob demanda antes de prosseguir. Isto lhe dá a opção de restaurar seu site no improvável evento de você encontrar algum problema ao habilitar o HSTS.
Na Kinsta, nós fornecemos backups automáticos diários do WordPress. Entretanto, ainda é inteligente criar um backup manual antes de fazer qualquer mudança importante. Para criar esta rede de segurança, entre no seu painel do MyKinsta e selecione o site em questão. Em seguida, clique na aba Backups.
A seguir, selecione a aba Manual. Encontre o botão Fazer backup agora, e dê um clique nele.
Agora você pode adicionar uma pequena nota ao seu backup. Isto pode ajudá-lo a identificá-lo em seu painel do MyKinsta.
Finalmente, clique em Criar backup. Agora vamos gerar seu backup e adicioná-lo ao seu painel.
Passo 2: Configure um redirecionamento HTTP para HTTPS
Antes de ativar a política do HSTS, você precisará implantar um certificado SSL em seu site. Em Kinsta, protegemos automaticamente todos os domínios verificados com a nossa integração com o Cloudflare. Isto inclui certificados SSL gratuitos com suporte a wildcard. A menos que você precise especificamente de um certificado personalizado, você não terá que se preocupar em configurar o SSL manualmente.
A seguir, você precisará configurar um redirecionamento HTTP para HTTPS, se ainda não o fez. Para criar este redirecionamento, simplesmente entre no seu painel do MyKinsta e selecione seu site. A seguir, clique em Ferramentas.
Na seção Forçar HTTPS, clique no botão Habilitar. Agora você pode escolher usar seu domínio primário como destino, ou solicitar o uso de um domínio alternativo. Após tomar esta decisão, selecione Forçar HTTPS.
Apenas esteja ciente de que se você usar qualquer proxy de terceiros ou configurar qualquer regra HTTPS personalizada, então forçar HTTPS pode resultar em erros ou outros comportamentos estranhos. Se você encontrar algum problema, você pode sempre contatar nossa equipe de suporte que ficará feliz em ajudar.
Se seu servidor web está rodando Nginx, então você pode redirecionar todo o seu tráfego HTTP para HTTPS. Simplesmente adicione o seguinte código ao seu arquivo de configuração Nginx:
server {
listen 80;
server_name domain.com www.domain.com;
return 301 https://domain.com$request_uri;
}
Alternativamente, se você é um cliente Kinsta, então nós podemos fazer esta mudança para você. Basta abrir um ticket de suporte e nos informar qual domínio precisa ser direcionado, e nós cuidaremos do resto.
Passo 3: Adicione o cabeçalho HSTS
Há vários tipos de diretrizes e níveis de segurança que você pode aplicar ao seu cabeçalho HSTS. Entretanto, nós recomendamos adicionar a diretiva de idade máxima, pois ela define o tempo em segundos para o qual o servidor web deve entregar via HTTPS. Isto bloqueia o acesso a páginas ou subdomínios que só podem ser servidos através de HTTP.
Se você estiver usando um servidor Apache, você precisará abrir seu arquivo de hosts virtuais. Você pode então adicionar o seguinte:
Header always set Strict-Transport-Security max-age=31536000
Na Kinsta, rodamos servidores Nginx. Se você é um cliente Kinsta, então você pode adicionar o seguinte ao seu arquivo de configuração do Nginx:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
Como sempre, podemos fazer todo o trabalho duro por você. Basta abrir um ticket de suporte solicitando que nós adicionemos um cabeçalho HSTS ao seu site. Nossa equipe ficará feliz em fazer esta mudança no seu arquivo Nginx.
Passo 4: Envie o seu site para a lista de pré-carregamento HSTS
Há uma grande desvantagem na política do HSTS. Um navegador tem que encontrar o cabeçalho do HSTS pelo menos uma vez antes que ele possa usá-lo para visitas futuras. Isto significa que seu público precisará completar o processo de redirecionamento HTTP para HTTPS pelo menos uma vez. Durante este tempo, eles estarão vulneráveis a ataques baseados em protocolos.
Em uma tentativa de fechar esta lacuna de segurança, o Google criou a lista de pré-carregamento do HSTS. Esta lista lista todos os sites que suportam o HSTS, que é então codificada em código duro no Chrome. Ao adicionar seu site a esta lista, os visitantes não terão mais que completar um redirecionamento inicial do HTTPS.
A maioria dos principais navegadores de internet tem suas próprias listas de pré-carregamento HSTS, que são baseadas na lista do Chrome. Para ser elegível para esta lista, seu site deve atender aos critérios de submissão. A boa notícia é que nós já cobrimos todos esses requisitos, então você pode ir em frente e enviar seu site para a lista de pré-carregamento HSTS.
Uma vez que você consiga entrar nesta lista, algumas ferramentas de Search Engine Optimization (SEO) podem lhe avisar sobre 307 redirecionamentos. Estes redirecionamentos ocorrem quando alguém tenta acessar seu site através de um protocolo HTTP não seguro. Isto aciona um redirecionamento 307 ao invés de um redirecionamento 301 permanente. Se você está preocupado com isso, você pode usar o httpstatus para escanear seu site e verificar se um redirecionamento do 301 está ocorrendo.
Passo 5. Verifique o seu cabeçalho Strict-Transport-Security
Depois de adicionar o cabeçalho HSTS, é uma boa ideia testar se ele está funcionando corretamente. Você pode realizar esta verificação usando as ferramentas web embutidas no seu navegador.
Os passos irão variar dependendo do navegador web escolhido. Para realizar isto, verifique no Google Chrome DevTools, navegue até a página web que você deseja testar. Você pode então clicar em qualquer área em branco, e selecionar Inspecionar.
No painel subsequente, selecione a aba Rede. Você pode então verificar a seção de cabeçalhos, que deve conter o seguinte:
strict-transport-security: max-age=31536000
Alternativamente, você pode escanear seu site usando a ferramenta Cabeçalhos de Segurança. Como antes, simplesmente digite a URL do seu site e então clique em Scan. Isto retornará um Relatório de Segurança, que deve conter uma etiqueta de segurança de transporte rígido. Se esta tag estiver presente, então seu cabeçalho HSTS agora está configurado corretamente, e você fechou com sucesso o loophole de redirecionamento HTTPS.
Resumo
Redirecionar de HTTP para HTTPS é uma melhor prática de segurança. Entretanto, nenhuma tecnologia é perfeita e este redirecionamento pode tornar o seu site mais suscetível a ataques SSL.
Com isto em mente, vamos recapitular como corrigir o erro “HSTS Missing From HTTPS Server”:
- Crie um backup manual do seu site.
- Configure um redirecionamento HTTP para HTTPS.
- Adicione o cabeçalho HSTS.
- Submeta o seu site à lista de pré-carregamento HSTS.
- Verifique o seu cabeçalho de segurança de transporte rígido.
A resolução de mensagens de erro pode ser um processo demorado e frustrante. No entanto, nossa equipe de especialistas está aqui para ajudar! O suporte 24 horas está incluído em todos os nossos planos Kinsta, para que você possa se concentrar no que realmente importa: crescer o seu site.