Gerador de cabeçalhos de segurança HTTP (CSP, HSTS)
Marque os cabeçalhos desejados (CSP, HSTS, X-Frame-Options…) e copie a configuração pronta para Nginx, Express, Vercel ou Apache.
Cabeçalhos de segurança HTTP: valores e configuração
A ferramenta produz um bloco de configuração para Nginx, Express, Vercel ou Apache com até seis cabeçalhos: HSTS de um ano com preload, uma política CSP básica, X-Frame-Options (DENY ou SAMEORIGIN), X-Content-Type-Options nosniff, Referrer-Policy strict-origin-when-cross-origin e Permissions-Policy, que desativa câmera, microfone e geolocalização. Esses valores seguem as especificações em vigor, mas são menos rígidos que a lista de referência da OWASP.
Cabeçalhos gerados
| Cabeçalho | Valor gerado | Efeito |
|---|---|---|
Strict-Transport-Security | max-age=31536000; includeSubDomains; preload | HTTPS obrigatório por 1 ano (31.536.000 s), subdomínios incluídos |
Content-Security-Policy | default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; | fontes permitidas para scripts, estilos e imagens |
X-Frame-Options | DENY ou SAMEORIGIN | proteção contra clickjacking |
X-Content-Type-Options | nosniff | sem detecção do tipo MIME |
Referrer-Policy | strict-origin-when-cross-origin | apenas a origem vai para outros sites |
Permissions-Policy | camera=(), microphone=(), geolocation=() | câmera, microfone e geolocalização desativados |
Exemplo (Nginx, DENY)
Cada linha tem o seguinte formato; a palavra-chave always adiciona o cabeçalho também às respostas de erro:
add_header X-Frame-Options "DENY" always;add_header X-Content-Type-Options "nosniff" always;
Limites do código gerado
- A Referrer-Policy não é configurável.
- A CSP permite
'unsafe-inline'para scripts, o que enfraquece a proteção contra XSS; nonces ou hashes são mais seguros. - A diretiva
preloadvem do hstspreload.org e não da RFC 6797: o cadastro exige um max-age ≥ 31.536.000, includeSubDomains e HTTPS em todos os subdomínios, e uma remoção leva meses.
A lista da OWASP atualizada em 04/10/2026 vai além: HSTS de 2 anos (63.072.000 s) sem preload, Referrer-Policy no-referrer, X-Frame-Options deny. A MDN lembra que a diretiva CSP frame-ancestors oferece mais opções que o X-Frame-Options e que strict-origin-when-cross-origin é a política padrão dos navegadores desde a revisão de novembro de 2020 do padrão Fetch.
Fontes e datas: RFC 6797, HSTS (novembro de 2012); requisitos do hstspreload.org; OWASP Secure Headers, lista de referência (04/10/2026); MDN, X-Frame-Options e Referrer-Policy (verificado em 14/10/2026).
Perguntas frequentes
Que valor de max-age escolher para o cabeçalho HSTS?
A ferramenta usa 31.536.000 segundos, ou seja, um ano, o mínimo exigido para a lista de pré-carregamento do hstspreload.org com includeSubDomains e preload. A OWASP recomenda 63.072.000 segundos (2 anos). Segundo a RFC 6797, um max-age=0 pede ao navegador que esqueça a política HSTS do site.
Usar X-Frame-Options ou a diretiva CSP frame-ancestors?
Os dois bloqueiam a exibição das suas páginas em um iframe de terceiros. DENY proíbe qualquer quadro, SAMEORIGIN permite apenas o seu próprio domínio. A MDN indica que frame-ancestors oferece mais opções e que o valor ALLOW-FROM do X-Frame-Options é obsoleto: os navegadores recentes ignoram então o cabeçalho inteiro.
Por que 'unsafe-inline' enfraquece a Content-Security-Policy?
Com 'unsafe-inline' em script-src, qualquer script escrito diretamente na página é executado, inclusive um script injetado por uma falha de XSS. A ferramenta o inclui para não quebrar os sites que contêm scripts assim. Para uma proteção real, substitua-o por nonces ou hashes SHA-256 dos scripts autorizados.
Qual Referrer-Policy escolher?
A ferramenta define strict-origin-when-cross-origin: URL completa para o seu próprio site, apenas a origem para outros sites em HTTPS, nada para um site em HTTP. É o valor padrão dos navegadores desde a revisão de novembro de 2020 do padrão Fetch. A OWASP prefere no-referrer, que não envia nada.
A ferramenta é realmente gratuita?
Sim, todas as ferramentas do Kristools são 100% gratuitas e acessíveis sem cadastro.
Meus dados estão protegidos?
Sim. Todo o processamento é feito diretamente e com segurança no seu navegador. Nenhum dado pessoal é enviado para os nossos servidores.