Cabeçalhos HTTP de Segurança: Guia de CSP, HSTS e COOP
Guia técnico para configurar cabeçalhos HTTP de segurança em 2026: Content Security Policy (CSP Level 3), HSTS com preloading, COOP e COEP.

A configuração rigorosa de cabeçalhos HTTP de segurança consolidou-se em 2026 como medida indispensável para proteger aplicações web contra Cross-Site Scripting (XSS), Clickjacking e ataques de canal lateral (Spectre). Mesmo que o código backend seja seguro, a ausência de cabeçalhos defensivos expõe os navegadores dos usuários a brechas operacionais.
A implementação de uma política de Content Security Policy (CSP Nível 3) e de isolamento de processos com COOP/COEP eleva os padrões de segurança da plataforma.
Cabeçalhos Essenciais em 2026
- Content-Security-Policy (CSP Level 3): Define regras estritas de execução (
default-src 'self'; script-src 'self';). - Strict-Transport-Security (HSTS): Exige tráfego HTTPS obrigatório em todos os subdomínios (
max-age=63072000; includeSubDomains; preload). - Cross-Origin-Opener-Policy (COOP): Isola abas abertas de terceiros (
same-origin). - Cross-Origin-Embedder-Policy (COEP): Exige permissões CORS explícitas para elementos externos (
require-corp). - X-Content-Type-Options: Bloqueia identificação incorreta de tipos MIME (
nosniff). - Permissions-Policy: Desativa recursos invasivos (câmera, microfone, GPS).
Para auditar e inspecionar os cabeçalhos de resposta HTTP do seu site, utilize nosso Testador de Cabeçalhos HTTP de Segurança.
Tabela Comparativa: Configurações de Segurança
| Cabeçalho | Configuração Padrão Insegura | Padrão Hardened (2026) |
|---|---|---|
| Content-Security-Policy | Ausente | default-src 'self'; script-src 'self'; |
| Strict-Transport-Security | max-age=3600 |
max-age=63072000; includeSubDomains; preload |
| X-Frame-Options | Ausente | DENY / frame-ancestors 'none' |
| X-Content-Type-Options | Ausente | nosniff (Validação estrita de tipos) |
| Cross-Origin-Opener-Policy | unsafe-none |
same-origin (Isolamento de processo) |
| Cross-Origin-Embedder-Policy | unsafe-none |
require-corp (Validação de recursos) |
Equação de Proteção XSS com Nonce Criptográfico
A probabilidade de execução de um payload XSS ($\mathcal{P}_{ ext{xss}}$) com nonce de 128 bits é:
$$\mathcal{P}_{ ext{xss}} = rac{1}{2^{128}} pprox 2.93 imes 10^{-39}$$
Configuração Nginx de Alta Segurança
server {
listen 443 ssl http2;
server_name tecnocrypter.com;
ssl_protocols TLSv1.3;
ssl_prefer_server_ciphers off;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Cross-Origin-Opener-Policy "same-origin" always;
add_header Cross-Origin-Embedder-Policy "require-corp" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:;" always;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
}
}
Práticas DevSecOps Recomendadas
- Modo Report-Only: Executar com
Content-Security-Policy-Report-Onlypara mapear erros antes do bloqueio definitivo. - Defesa de Sessões: Resguardar tokens com base em Defesa contra Phishing AiTM.
- Integridade de Scripts (SRI): Adicionar hashes SHA-256 conforme Integridade de Arquivos com Hashes Criptográficos.
- Auditoria de Dependências: Validar pacotes de terceiros conforme Segurança na Cadeia de Suprimentos.
Resumo
A configuração correta dos cabeçalhos HTTP é uma defesa eficiente e de baixo impacto para proteger usuários contra vulnerabilidades na camada web.
Referências:
- Documentação Mozilla MDN sobre HTTP Headers.
- Especificação W3C Content Security Policy Level 3.
- Guia Técnico: Hardening de Docker e Kubernetes.


