Guia de SEO Passo 7: Segurança — A Linha de Base que o Google Espera em 2026
Guia de SEO Passo 7: Segurança
Este é o Passo 7 do Guia de SEO de 13 Passos. A segurança não é apenas sobre proteger os usuários — ela impacta diretamente suas classificações nos buscadores. O Google utiliza HTTPS como um sinal de classificação desde 2014, e as expectativas só aumentaram.
A maioria dos proprietários de sites vê a segurança como um binário: "Temos SSL, então estamos seguros." Na realidade, o Google avalia dezenas de sinais de segurança. Sites com cabeçalhos de segurança adequados, certificados válidos e sem conteúdo misto superam sites que possuem apenas um certificado SSL básico — tudo o mais sendo igual.
A boa notícia: a maioria das correções de segurança são configurações únicas. Configure uma vez, e elas protegem suas classificações permanentemente.
Configuração do SSL
SSL (tecnicamente TLS) criptografa a conexão entre seu servidor e os visitantes. Desde 2014, o Google confirmou explicitamente o HTTPS como um sinal de classificação. Em 2026, não ter HTTPS não é apenas um problema de classificação — o Chrome marca sites HTTP como "Não Seguro" na barra de endereços, destruindo a confiança dos usuários.
Requisitos para um SSL adequado:
| Requisito | Por quê | Como Verificar | |-----------|---------|----------------| | Certificado válido | Expirado = aviso do navegador = usuários abandonando o site | Verifique a data de validade | | Cadeia completa | Cadeias incompletas falham em alguns dispositivos | Teste do SSL Labs | | TLS 1.2+ | Versões mais antigas têm vulnerabilidades conhecidas | Teste do SSL Labs | | Sem SHA-1 | Obsoleto, navegadores o rejeitam | Detalhes do certificado | | Cobertura SAN | www e não-www devem estar cobertos | Detalhes do certificado | | Auto-renovação | Previne desastres de expiração | Configuração do Let's Encrypt / provedor |
Pontuação do SSL:
100% = Certificado válido + Cadeia completa + TLS 1.3 + Cifra forte + Auto-renovação
0% = Certificado expirado ou ausente
Erros comuns de SSL:
- Certificado expira sem aviso — Configure monitoramento (Passo 6) no mínimo 30 dias antes da expiração
- Cadeia de certificado incompleta — O servidor deve enviar certificados intermediários, não apenas o leaf
- Conteúdo misto — Página HTTPS carrega recursos HTTP (imagens, scripts, folhas de estilo)
- Loops de redirecionamento — Ciclos HTTP → HTTPS → HTTP causados por CDN/proxy mal configurados
- Mismatch entre non-www e www — Certificado cobre um, mas não o outro
Ganho rápido: Execute seu domínio no SSL Labs (ssllabs.com/ssltest). Qualquer coisa abaixo de uma classificação "A" tem problemas que podem ser corrigidos. A maioria dos provedores de hospedagem corrige isso com um clique.
Cabeçalhos de Segurança
Cabeçalhos de segurança são cabeçalhos de resposta HTTP que instruem os navegadores sobre como se comportar ao carregar seu site. Eles previnem categorias inteiras de ataques — e os crawlers do Google os verificam.
Os cabeçalhos de segurança essenciais:
Content-Security-Policy (CSP)
CSP é o cabeçalho de segurança mais poderoso. Ele informa aos navegadores exatamente quais recursos (scripts, estilos, imagens, fontes) são permitidos para carregar em suas páginas.
Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.exemplo.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://api.exemplo.com; frame-ancestors 'none';
O que o CSP previne:
- Ataques de script entre sites (XSS)
- Ataques de injeção de dados
- Clickjacking (via
frame-ancestors) - Execução não autorizada de scripts (criptominers, injetores de anúncios)
Estratégia de implantação do CSP:
- Comece com
Content-Security-Policy-Report-Only(registra violações sem bloquear) - Monitore os relatórios por 1-2 semanas
- Adicione fontes legítimas à lista de permissões
- Mude para o modo de aplicação
- Adicione
report-urioureport-topara registro contínuo de violações
X-Frame-Options
Previne que seu site seja incorporado em iframes em outros domínios (proteção contra clickjacking).
X-Frame-Options: DENY
Ou se você precisa permitir o framing de mesma origem:
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options
Previne que os navegadores realizem sniffing de tipo MIME (interpretando arquivos como tipos diferentes dos declarados).
X-Content-Type-Options: nosniff
Esta linha simples previne ataques onde um arquivo .jpg contém JavaScript oculto que o navegador pode executar.
Referrer-Policy
Controla quanta informação de referenciador é enviada quando os usuários clicam em links do seu site.
Referrer-Policy: strict-origin-when-cross-origin
Isso envia a URL completa para solicitações de mesma origem, mas apenas a origem (domínio) para solicitações de diferentes origens. Equilibra as necessidades de análise com a privacidade.
Permissions-Policy
Controla quais recursos do navegador (câmera, microfone, geolocalização, etc.) podem ser usados em seu site.
Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()
Desabilitar recursos que você não usa previne scripts de terceiros de abusar deles.
Exemplo de implementação de cabeçalho (Next.js):
// next.config.js
module.exports = {
async headers() {
return [{
source: '/(.*)',
headers: [
{ key: 'X-Content-Type-Options', value: 'nosniff' },
{ key: 'X-Frame-Options', value: 'SAMEORIGIN' },
{ key: 'Referrer-Policy', value: 'strict-origin-when-cross-origin' },
{ key: 'Permissions-Policy', value: 'camera=(), microphone=(), geolocation=()' },
{ key: 'Strict-Transport-Security', value: 'max-age=31536000; includeSubDomains; preload' },
]
}]
}
}
Implementação de cabeçalho (Apache .htaccess):
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Implementação de cabeçalho (Nginx):
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Ganho rápido: Adicione todos os 5 cabeçalhos acima à configuração do seu servidor. Isso leva 5 minutos e melhora imediatamente sua postura de segurança em qualquer ferramenta de verificação.
HSTS Preload
HTTP Strict Transport Security (HSTS) informa aos navegadores para sempre usar HTTPS para seu domínio — mesmo antes da primeira solicitação. Sem HSTS, a primeira visita ao seu site pode ainda usar HTTP (vulnerável à interceptação) antes do redirecionamento para HTTPS ocorrer.
Cabeçalho HSTS:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
As três diretrizes:
| Diretriz | Significado | |-----------|-------------| | max-age=31536000 | Lembre-se disso por 1 ano (em segundos) | | includeSubDomains | Aplica-se a todos os subdomínios também | | preload | Solicita inclusão nas listas de preload do navegador |
Lista de preload do HSTS:
A proteção HSTS definitiva. Os navegadores vêm com uma lista interna de domínios que devem sempre usar HTTPS. Submeter seu domínio ao hstspreload.org significa:
- Visitantes de primeira vez obtêm HTTPS imediatamente (sem redirecionamento HTTP → HTTPS)
- Impossível para atacantes rebaixar conexões
- Permanente (difícil de remover uma vez submetido)
Requisitos para o preload do HSTS:
- Certificado HTTPS válido
- Redirecionar todo HTTP para HTTPS (incluindo subdomínios)
- Cabeçalho HSTS com
max-age>= 31536000 - Cabeçalho HSTS inclui
includeSubDomains - Cabeçalho HSTS inclui
preload - Todos os subdomínios devem suportar HTTPS
Aviso: Submeta ao preload apenas se TODOS os seus subdomínios suportarem HTTPS. A diretriz includeSubDomains significa que qualquer subdomínio somente HTTP se tornará inacessível.
Ganho rápido: Se você já tiver HTTPS em todos os subdomínios, adicione o cabeçalho HSTS completo e submeta ao hstspreload.org. O processamento leva algumas semanas, mas a proteção é permanente.
Varredura de Vulnerabilidades
A varredura de vulnerabilidades automatizada identifica problemas de segurança conhecidos em sua pilha antes que os atacantes os explorem.
O que a varredura de vulnerabilidades verifica:
- Software desatualizado: WordPress, plugins, bibliotecas JavaScript com CVEs conhecidas
- Arquivos expostos:
.env,.git,wp-config.php, dumps de banco de dados - Vazamento de informações: Cabeçalhos de versão do servidor, modo de depuração, rastros de pilha
- Credenciais padrão: Páginas admin sem autenticação, senhas padrão
- Portas/serviços abertos: Serviços desnecessários expostos à Internet
- Pontos de injeção: Formulários sem proteção CSRF, entradas não validadas
Vulnerabilidades comuns por plataforma:
| Plataforma | Principal Vulnerabilidade | Correção | |------------|--------------------------|----------| | WordPress | Plugins desatualizados | Atualização automática + WAF | | Shopify | Permissões de aplicativos de terceiros | Auditoria da lista de aplicativos trimestralmente | | Next.js | Rotas de API expostas | Middleware de autenticação + limitação de taxa | | Sites estáticos | Configuração incorreta do CDN | Revisar regras de cache | | Custom | Injeção SQL | Consultas parametrizadas |
Frequência de varredura:
- Diário: Varredura de superfície automatizada (SSL, cabeçalhos, arquivos expostos)
- Semanal: Verificação de vulnerabilidades de dependência (npm audit, scanner de plugins do WordPress)
- Mensal: Varredura profunda com testes autenticados
- Após cada deploy: Verificação de regressão
Ganho rápido: Execute npm audit (Node.js) ou verifique sua lista de plugins do CMS em busca de componentes desatualizados. Corrija problemas de gravidade crítica/alta imediatamente.
Conteúdo Misto
Conteúdo misto ocorre quando uma página HTTPS carrega recursos (imagens, scripts, folhas de estilo, iframes) através de HTTP. Isso quebra parcialmente a criptografia e aciona avisos do navegador.
Tipos de conteúdo misto:
| Tipo | Gravidade | Exemplo | Comportamento do Navegador | |---------|-----------|-------------------------------|-----------------------------| | Ativo | Alto | Script HTTP, iframe, CSS | Bloqueado por padrão | | Passivo | Médio | Imagem HTTP, vídeo, áudio | Carregado com aviso |
Conteúdo misto ativo é bloqueado por navegadores modernos — o que significa que seus scripts e estilos simplesmente não carregarão. Conteúdo misto passivo carrega, mas mostra avisos de segurança.
Encontrando conteúdo misto:
- Abra o Chrome DevTools → Console
- Procure por avisos de "Conteúdo Misto"
- Alternativamente, faça uma varredura com um crawler (Screaming Frog, LANGR)
Fontes comuns de conteúdo misto:
- URLs
http://codificadas no conteúdo (postagens de blog, descrições de produtos) - Widgets de terceiros carregando recursos HTTP
- Conteúdo incorporado (embeds antigos do YouTube, widgets de mídias sociais)
- CSS
background-imagecom URLs HTTP - Fontes carregadas via HTTP
Corrigindo conteúdo misto:
<!-- Ruim -->
<img src="http://exemplo.com/imagem.jpg" />
<!-- Bom -->
<img src="https://exemplo.com/imagem.jpg" />
<!-- Melhor (relativo ao protocolo, adapta-se ao protocolo da página) -->
<img src="//exemplo.com/imagem.jpg" />
Correção de banco de dados (WordPress):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://seudominio.com', 'https://seudominio.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://seudominio.com', 'https://seudominio.com');
Ganho rápido: Abra sua página inicial no Chrome, pressione F12, verifique a guia Console em busca de avisos de conteúdo misto. Corrija qualquer aviso que aparecer — estes são diretamente visíveis para o Google.
Riscos de Scripts de Terceiros
Cada script externo que você carrega é um potencial passivo de segurança (e desempenho). Scripts de terceiros podem:
- Ser comprometidos (ataques à cadeia de suprimentos)
- Rastrear seus usuários sem consentimento (violação do GDPR)
- Lentificar seu site (bloqueio de renderização, latência de rede)
- Quebrar funcionalidades (atualizações de versão, indisponibilidades)
- Injetar conteúdo indesejado (scripts de anúncios com problemas)
Audite seus scripts de terceiros:
| Script | Necessário? | Nível de Risco | Alternativa | |------------------------------|-------------|----------------|------------------------------| | Google Analytics | Muitas vezes sim | Baixo | Rastreamento do lado do servidor | | Widgets de chat | Talvez | Médio | Soluções auto-hospedadas | | Botões de compartilhamento social | Raramente | Médio | Links de compartilhamento estáticos | | Testes A/B | Às vezes | Alto | Testes do lado do servidor | | Pixels de retargeting | Decisão de negócios | Alto | Dados de primeira parte | | CDNs de fontes | Conveniente | Baixo | Fontes auto-hospedadas |
Mitigação de riscos para scripts de terceiros essenciais:
- Integridade de Sub-recurso (SRI): Verificação de hash previne que scripts adulterados sejam carregados
<script src="https://cdn.exemplo.com/lib.js"
integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxAE+sO0..."
crossorigin="anonymous"></script>
- Restrições de CSP: Permita apenas scripts de domínios conhecidos
- Iframes isolados: Isolar widgets de terceiros
- Auditorias regulares: Revisão trimestral de todos os recursos externos
- Monitoramento: Alerta sobre novos domínios externos aparecendo em suas páginas
Ganho rápido: Liste todas as tags em seu HTML que carregam de um domínio externo. Remova qualquer uma que você não reconheça ou que não precisa mais. Cada remoção melhora tanto a segurança quanto a velocidade da página.
Detecção de Malware & Navegação Segura do Google
O Google mantém uma lista de Navegação Segura de sites conhecidos por distribuir malware ou hospedar conteúdo de phishing. Ser listado aqui é catastrófico para o SEO — o Google exibe um aviso de tela cheia antes de permitir que os usuários acessem seu site.
Como os sites são sinalizados:
- Site comprometido distribuindo malware (WordPress hackeado, etc.)
- Scripts injetados redirecionando para sites maliciosos
- Páginas de phishing hospedadas em seu domínio
- Conteúdo gerado pelo usuário vinculando a malware
- Arquivos hospedados sinalizados como perigosos
Verificando seu status de Navegação Segura:
https://transparencyreport.google.com/safe-browsing/search?url=seudominio.com
Ou no Google Search Console: seção Problemas de Segurança.
Prevenção:
- Mantenha todo o software atualizado (CMS, plugins, bibliotecas)
- Use senhas de administrador fortes e únicas + 2FA
- Monitore a integridade dos arquivos (detecte alterações não autorizadas)
- Verifique conteúdo enviado por usuários
- Remova plugins/temas não utilizados
- Revise usuários administradores regularmente
Se você for sinalizado:
- Identifique e remova o conteúdo de malware/phishing
- Atualize todo o software e altere todas as senhas
- Solicite uma revisão no Google Search Console
- Revisões normalmente levam de 1 a 3 dias
- Monitore de perto por 30 dias (reinfecção é comum)
Ganho rápido: Verifique seu site em transparencyreport.google.com. Se limpo, assegure-se de que seu CMS e todos os plugins estão atualizados para permanecer assim.
Checklist de Segurança para SEO
- [ ] Certificado SSL válido com auto-renovação configurada
- [ ] Redirecionamento HTTP → HTTPS em todas as páginas (301, não 302)
- [ ] Cabeçalho HSTS com max-age >= 31536000
- [ ] Cabeçalho Content-Security-Policy configurado
- [ ] X-Content-Type-Options: nosniff
- [ ] X-Frame-Options: DENY ou SAMEORIGIN
- [ ] Referrer-Policy: strict-origin-when-cross-origin
- [ ] Permissions-Policy desativando recursos não utilizados
- [ ] Sem conteúdo misto (recursos HTTP em páginas HTTPS)
- [ ] Nenhum arquivo sensível exposto (.env, .git, arquivos de configuração)
- [ ] Cabeçalhos de versão do servidor removidos ou genéricos
- [ ] Todo o software/plugins atualizados
- [ ] Status de Navegação Segura do Google: limpo
- [ ] Scripts de terceiros auditados e minimizados
- [ ] Hashes SRI em scripts externos críticos
Erros Comuns de Segurança (Classificados por Impacto no SEO)
- Certificado SSL expirado — Queda imediata na classificação + aviso do navegador
- Conteúdo misto — Degrada sinais de confiança, criptografia parcial inútil
- Sem HSTS — Primeira solicitação vulnerável, sinaliza postura de segurança fraca
- CSP ausente — Permite que qualquer script seja executado (vetor XSS)
- Arquivos sensíveis expostos —
.envcom chaves de API,.gitcom código fonte - CMS/plugins desatualizados — Exploits conhecidos, eventual comprometimento
- Nenhum cabeçalho de segurança — Sinaliza que você não considerou a segurança
- Scripts de terceiros excessivamente permissivos — Brechas de segurança que você não pode controlar
O Que Vem a Seguir?
Passo 8: Visibilidade de IA — A vanguarda do SEO em 2026. Como otimizar para a Visão Geral da IA do Google, citações do ChatGPT, referências do Perplexity e Gemini — o canal de descoberta que mais cresce e que a maioria dos concorrentes nem considerou.
Este guia faz parte da série de 13 etapas de SEO da LANGR. Execute uma auditoria gratuita para ver onde seu site está em todas as 13 disciplinas.