Inspecione os cabeçalhos de resposta HTTP e analise os cabeçalhos de segurança de qualquer site.
Verificar cabeçalhos
O que são cabeçalhos HTTP?
Os cabeçalhos HTTP são metadados enviados entre o navegador e o servidor em cada pedido e resposta. Controlam o armazenamento em cache, a autenticação, o tipo de conteúdo, as políticas de segurança e muito mais. A análise dos cabeçalhos ajuda a diagnosticar problemas de desempenho e a verificar as configurações de segurança.
Como funciona esta ferramenta
Introduza um URL completo e a ferramenta envia um pedido `HEAD` através de uma função de borda do Xitoring. Capturamos todos os cabeçalhos de resposta — incluindo aqueles relevantes para a segurança que as Ferramentas do Desenvolvedor do seu navegador podem ocultar ou esconder — e, em seguida, categorizamo-los para que possa ver rapidamente quais as proteções que estão implementadas e quais as que faltam. A ferramenta segue os redirecionamentos até três saltos, pelo que um URL do tipo `http://...` é apresentado com os seus cabeçalhos HTTPS finais.
Cabeçalhos de segurança importantes
Strict-Transport-Security — Força ligações HTTPS, prevenindo ataques de downgrade
Content-Security-Policy — Controla que recursos o browser pode carregar
X-Frame-Options — Previne clickjacking controlando a incorporação em iframe
X-Content-Type-Options — Previne ataques de MIME-type sniffing
Referrer-Policy — Controla a quantidade de informação de referer enviada com os pedidos
Monitorize o tempo de atividade e o desempenho do seu site
Monitorizar continuamente o estado HTTP, os tempos de resposta e os certificados SSL.
Como esta ferramenta funciona e o que os cabeçalhos de resposta realmente indicam.
Esta ferramenta encaminha o meu URL através dos servidores da Xitoring?
Sim — o pedido passa por uma função de borda do Xitoring, para que possamos obter cabeçalhos de fora da sua rede e devolver uma resposta limpa, incluindo pontos finais com restrições CORS que, de outra forma, o navegador bloquearia. Não registamos o URL nem o conteúdo da resposta. Se precisar de inspecionar um URL que prefira não partilhar com terceiros, utilize `curl -I ` localmente.
Por que é que faltam alguns cabeçalhos de segurança no meu site?
Os cabeçalhos de segurança como `Content-Security-Policy`, `Strict-Transport-Security` e `X-Frame-Options` são opcionais — não são emitidos por predefinição. O servidor web de origem (Nginx, Apache, IIS) ou a sua CDN (Cloudflare, Fastly, AWS CloudFront) têm de ser configurados para os adicionar. A lista de cabeçalhos em falta no resultado indica quais deve adicionar e, de forma geral, contra o que cada um protege.
Devo preocupar-me se o meu site não tiver uma Política de Segurança de Conteúdo?
A CSP é a defesa mais eficaz contra o cross-site scripting, mas é também o cabeçalho mais difícil de implementar corretamente, uma vez que pode impedir o funcionamento de scripts legítimos. Se o seu site carrega conteúdo gerado pelo utilizador, incorpora widgets de terceiros ou aceita envios de formulários, dê prioridade à CSP. Comece no modo `Content-Security-Policy-Report-Only`, registe as violações durante uma semana e, em seguida, passe para a aplicação da política.
Qual é a diferença entre o HSTS e um redirecionamento de HTTP para HTTPS?
Um redirecionamento HTTPS é do lado do servidor — devolve um código 301 ou 308 na primeira vez que alguém solicita `http://...`. Esse primeiro pedido ainda é transmitido em texto simples e pode ser interceptado. O HSTS (`Strict-Transport-Security`) é um cabeçalho que, assim que o navegador o deteta, recusa-se a fazer quaisquer pedidos em texto simples para o seu domínio — mesmo antes de o utilizador digitar `https://`. A diretiva `preload`, juntamente com o envio para `hstspreload.org`, coloca o seu domínio na lista de pré-carregamento do navegador, pelo que até a primeira ligação é segura.
Posso verificar URLs internas ou privadas com esta ferramenta?
Apenas se forem acessíveis a partir da Internet pública. A recuperação é feita do lado do servidor a partir da nossa infraestrutura de borda, pelo que os URLs atrás de uma VPN, numa rede privada ou acessíveis apenas através de `localhost` não funcionarão. Para serviços internos, execute `curl -I ` a partir de um host dentro da rede, ou utilize o [monitoramento de sites](https://xitoring.com/website-monitoring) da Xitoring, que pode fazer a verificação a partir de um nó privado.
Por que é que o tempo de resposta difere do que o meu navegador mostra?
O tempo indicado mede uma única solicitação `HEAD` da nossa infraestrutura de borda até o seu servidor — trata-se do tempo de ida e volta, acrescido do tempo necessário para gerar os cabeçalhos da resposta. A medição do seu navegador também inclui a resolução de DNS, o handshake TLS, o download completo do corpo da página, a execução de scripts que bloqueiam a renderização e quaisquer redirecionamentos entretanto. Para obter o verdadeiro desempenho em campo, utilize o Real User Monitoring (RUM) ou o Core Web Vitals através do PageSpeed Insights; para verificações sintéticas a partir de várias localizações geográficas, utilize a monitorização de sites da Xitoring.