SECURITY GUIA

Security Headers: Proteja Seu Site com os Headers HTTP de Seguranca

Como configurar CSP, HSTS, X-Frame-Options e outros headers para proteger os visitantes de XSS, clickjacking e outros ataques.

Headers de seguranca: a primeira linha de defesa do navegador

Os headers de seguranca HTTP sao instrucoes que o servidor web envia ao navegador junto com a resposta, indicando como se comportar para proteger o usuario. Sem esses headers, o navegador aplica apenas suas politicas padrao, que frequentemente nao sao suficientes para prevenir ataques como XSS (Cross-Site Scripting), clickjacking, sniffing de content-type e downgrade HTTPS. Configurar os headers corretos e uma das medidas de seguranca mais eficazes e menos invasivas que voce pode implementar.

Nosso analisador de Security Headers verifica a presenca e a correta configuracao de cada header de seguranca, atribuindo uma pontuacao e fornecendo recomendacoes especificas. Mas ao contrario de um simples check de presente/ausente, tambem analisa os valores: um CSP excessivamente permissivo (unsafe-inline, unsafe-eval) e quase pior do que nao ter um, porque cria uma falsa sensacao de seguranca.

Os headers essenciais

Headers de seguranca recomendados
# Content-Security-Policy — Prevenzione XSS
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'

# Strict-Transport-Security — Forza HTTPS
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

# X-Content-Type-Options — Previene MIME sniffing
X-Content-Type-Options: nosniff

# X-Frame-Options — Previene clickjacking
X-Frame-Options: DENY

# Referrer-Policy — Controlla il referrer
Referrer-Policy: strict-origin-when-cross-origin

# Permissions-Policy — Limita API del browser
Permissions-Policy: camera=(), microphone=(), geolocation=()

CSP (Content-Security-Policy) e o mais poderoso: define quais recursos o navegador pode carregar e de onde. Previne eficazmente os ataques XSS impedindo a execucao de scripts nao autorizados. HSTS (Strict-Transport-Security) forca o navegador a usar sempre HTTPS, mesmo se o usuario digitar http://. O parametro preload permite inserir o dominio na lista HSTS preloaded dos navegadores, garantindo HTTPS desde a primeira visita.

Implementacao pratica

A implementacao ocorre no nivel do servidor web. No Nginx adicione add_header nas diretivas server ou location. No Apache use Header set no arquivo .htaccess ou na configuracao do virtualhost. Se usa um CDN (Cloudflare, AWS CloudFront), pode configurar os headers diretamente no CDN. Verifique sempre o resultado com nosso Security Headers check apos cada mudanca, e teste o site para garantir que o CSP nao bloqueia recursos legitimos.

Combine o controle dos headers com SSL Check para verificar o certificado SSL e HTTP Headers para uma analise completa de todos os headers da resposta (nao apenas os de seguranca). Um site com HTTPS perfeito mas sem headers de seguranca e vulneravel a ataques que HTTPS nao previne (XSS, clickjacking). Por outro lado, headers de seguranca sem HTTPS tem eficacia limitada. A seguranca web requer ambos.

A abordagem recomendada e incremental: comece com os headers mais simples (X-Content-Type-Options, X-Frame-Options), depois adicione HSTS e Referrer-Policy, e finalmente implemente CSP comecando com uma politica permissiva e restringindo-a gradualmente monitorando as violacoes com o parametro report-uri. Um CSP restritivo demais lancado sem testes pode quebrar funcionalidades do site, entao sempre teste em modo report-only antes de aplicar.

Experimente Security Headers grátis
Analisa os cabeçalhos de segurança HTTP: CSP, HSTS, X-Frame, etc.
Usar Security Headers >

Explore the Network