Verificador de cabeçalhos de segurança

Digite a URL de um site para verificar se cabeçalhos de segurança essenciais como HSTS, CSP e X-Frame-Options estão configurados corretamente. Veja quais cabeçalhos estão ausentes ou fracos, com dicas para corrigi-los.

Diagnosticar os cabeçalhos de segurança de um site em produção

Insira uma URL e o servidor vai até aquele site, recupera seus cabeçalhos de resposta e julga como estão configurados HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy e Permissions-Policy. Separa o que falta do que está presente mas é fraco, e explica em cada caso qual seria o problema.

**O que convém ter presente é que um cabeçalho estar presente e ser eficaz são duas coisas distintas.** O HSTS pode muito bem estar posto e, no entanto, um `max-age` curto deixa uma janela breve demais durante a qual o navegador exige HTTPS, de sorte que a proteção real acaba escassa. Por isso esta ferramenta distingue a aprovação do alerta. **O outro ponto é que os cabeçalhos que voltam não foram necessariamente acrescentados pelo servidor de origem.** Uma CDN ou um proxy reverso podem inseri-los pelo caminho, caso em que muda também o lugar onde corrigir a configuração. O que o diagnóstico mostra é o estado visível de fora; ele não pode dizer qual camada o pôs ali.

Como se usa

  1. Insira a URL que deseja examinar Indique uma URL publicamente alcançável que comece por `https://`.
  2. Execute a verificação **Destinos inalcançáveis de fora, como endereços IP privados, são recusados por precaução.**
  3. Leia os veredictos Vêm em três graus, aprovado, alerta e reprovado, em que alerta significa presente mas fraco.
  4. Sirva-se das notas para corrigir Cada entrada traz uma explicação do que falha, o que lhe permite fixar suas prioridades.

Dicas para aproveitar melhor

  • Esta ferramenta busca a URL de destino no lado do servidor, portanto pode verificar os cabeçalhos de qualquer site sem esbarrar nas restrições de CORS do navegador.
  • Um max-age de HSTS mais longo costuma ser mais seguro, mas se você planeja alterar a configuração do certificado, teste primeiro com um valor mais curto antes de aplicá-lo em produção.
  • Combine esta ferramenta com o Validador de CSP irmão para revisar em detalhe a sintaxe real da sua Content-Security-Policy.
  • Esta ferramenta reutiliza o mesmo mecanismo de "digitar uma URL e buscá-la no servidor" do verificador de robots.txt, portanto pode verificar qualquer página pública sem autenticação.
  • Verifique seu próprio site periodicamente para garantir que uma mudança na configuração de um CDN ou proxy reverso não tenha removido silenciosamente um cabeçalho de segurança.

Quando é útil

Fazer a verificação final antes de publicar

Pouco antes do lançamento você pode confirmar de fora que os cabeçalhos previstos são de fato devolvidos.

Tomar exemplo de outros sites

**Ver até onde chegaram sites comparáveis lhe dá uma régua para o seu próprio nível.**

Comparar antes e depois de uma mudança

Repita a verificação depois de acrescentado um cabeçalho para confirmar que surtiu efeito.

Revisar um site que você herdou

**Presta-se ao inventário que se segue a um repasse**, dando-lhe uma lista do que falta.

Termos dos cabeçalhos de segurança

HSTS
Um cabeçalho que obriga o acesso por HTTPS em vez de HTTP. **A menos que `max-age` alcance um ano ou mais, a proteção não dura o bastante.**
X-Content-Type-Options
Pôr `nosniff` impede que o navegador adivinhe um tipo MIME a partir do conteúdo, o que evita que um arquivo seja executado como algo que não é.
X-Frame-Options
Um cabeçalho que recusa deixar o seu site ser embutido num quadro. **Nas políticas mais recentes, o `frame-ancestors` do CSP assume o mesmo papel.**
Content-Security-Policy
O mecanismo que restringe de onde podem proceder os recursos carregáveis. É a peça central da defesa contra o XSS.
Referrer-Policy
Um cabeçalho que decide quanto da URL de procedência se entrega quando um visitante passa a outro site.
Permissions-Policy
Um cabeçalho que controla quais origens podem usar funções como a câmera, o microfone e a localização.

Perguntas frequentes

A funcionalidade é semelhante, mas o verificador da Toolbase permite revisar resultados e explicações de correção em japonês. A verificação detalhada da sintaxe de CSP é feita pela ferramenta irmã Validador de CSP.

Sim, mas como o HSTS só faz sentido para conexões HTTPS, o item HSTS sempre será diagnosticado como reprovado em um site que usa apenas HTTP. Migrar todo o site para HTTPS deve ser sua prioridade.

Atualmente a diretiva frame-ancestors do Content-Security-Policy é recomendada, mas como alguns navegadores antigos não a suportam, especificar ambos como uma camada dupla de proteção é a prática comum.

Não. A solicitação para a URL que você digita ocorre na hora, e as informações de cabeçalho obtidas nunca são armazenadas no servidor.

Não necessariamente. Permissions-Policy, em particular, é uma camada de defesa extra opcional, e sua prioridade pode ser menor dependendo da natureza do site. Recomendamos melhorar primeiro itens de alto impacto como HSTS, CSP e X-Frame-Options.
Tool-kun

Curiosidade — securityheaders.com e a história da defesa contra clickjacking

O diagnóstico de configurações de segurança por meio de cabeçalhos de resposta HTTP tem sido dominado há muito tempo pelo securityheaders.com, criado por Scott Helme. Como muitos serviços estrangeiros explicam resultados e correções apenas em inglês, a Toolbase criou seu próprio verificador para que resultados e explicações possam ser revisados juntos em japonês como alternativa nessa área.

O HSTS (HTTP Strict Transport Security) foi padronizado pela IETF como RFC 6797 em 2012. A origem remonta a uma demonstração de 2009 do "SSL Stripping", um ataque que explora o breve momento em que um usuário digita uma URL sem https:// e o navegador se conecta primeiro via HTTP não criptografado, permitindo que um atacante reescreva o tráfego. O HSTS permite que um navegador memorize que "este domínio deve sempre ser acessado via HTTPS", evitando ataques de downgrade após a primeira visita.

O X-Frame-Options era originalmente um cabeçalho de extensão proprietário introduzido pela Microsoft para o Internet Explorer 8 em 2009, adotado posteriormente por outros navegadores até se tornar um padrão de fato. A preocupação da época era o "clickjacking", em que um iframe invisível é sobreposto a um botão de aparência autêntica para que o usuário clique sem perceber. Hoje a indústria caminha para a diretiva frame-ancestors, mais flexível, do Content-Security-Policy, mas especificar ambos ainda é recomendado como reforço para navegadores antigos que não a suportam.