# Captcha no WordPress: Proteja o login em 5 passos

O <strong>captcha</strong> no login do WordPress barra robôs de força bruta antes que testem milhares de senhas por minuto. Segundo o <a href="https://nvd.nist.gov/vuln/detail/CVE-2020-35489">NVD/NIST (2020)</a>, a falha CVE-2020-35489 no Contact Form 7 recebeu CVSS 10.0 por upload irrestrito via formulário. Um desafio invisível como o Turnstile resolve sem cair a conversão. Escolha o tipo certo e valide a ativação.

O captcha é um teste automático que separa um humano de um robô antes de liberar uma ação sensível, como enviar o formulário de login. No WordPress, a tela `wp-login.php` é o alvo número um de ataques de senha, e sem essa barreira qualquer script consegue tentar combinações sem limite. Este tutorial mostra como instalar e configurar o captcha em 5 passos, qual tipo escolher entre desafio visível e verificação invisível, e como confirmar que a proteção ficou ativa. Para o contexto completo, consulte o <a href="https://full.services/seguranca-wordpress/">guia de segurança WordPress da FULL</a>.

---

## Primeiros passos: O que o captcha protege no WordPress

O verificacao anti-bot protege três pontos de entrada onde robôs causam mais dano: o login (`wp-login.php`), o registro de usuário e os comentários. Na maior parte dos sites invadidos que chegam ao suporte da FULL (150 mil sites), o vetor inicial foi força bruta no login sem limite de tentativa.

Esse teste anti-bot corta o fluxo na origem: o robô não resolve o desafio e nunca chega a testar a senha.

A tabela abaixo resume onde aplicar cada camada e o que ela bloqueia. A verificação resolve o problema de volume automatizado, mas não substitui senha forte nem <a href="https://full.services/glossario/two-factor-authentication/">autenticação de dois fatores</a>. Ela é a primeira barreira, não a única.

<table id="desafio de verificacao-pontos-protecao">
  <caption>teste anti-bot no WordPress: onde aplicar e o que bloqueia</caption>
  <thead>
    <tr>
      <th scope="col">Ponto de entrada</th>
      <th scope="col">Ameaça automatizada</th>
      <th scope="col">Camada recomendada</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th scope="row">Login (wp-login.php)</th>
      <td>Força bruta de senha</td>
      <td>verificacao humana + limite de tentativas</td>
    </tr>
    <tr>
      <th scope="row">Registro de usuário</th>
      <td>Cadastro de contas falsas</td>
      <td>checagem anti-bot invisível</td>
    </tr>
    <tr>
      <th scope="row">Comentários e formulários</th>
      <td>Spam e upload malicioso</td>
      <td>barreira anti-bot + validação de campo</td>
    </tr>
  </tbody>
</table>

---

## Os 3 tipos de captcha e qual escolher

Existem três gerações de verificacao anti-bot em uso no WordPress hoje, e a escolha define o atrito do visitante. O reCAPTCHA v2 mostra o clássico "não sou um robô", com acerto humano em torno de 98%. O reCAPTCHA v3 e o Cloudflare Turnstile rodam invisíveis e só pedem interação se o risco passar do limite.

Para login, o desafio invisível vence porque não derruba a taxa de acesso de usuários legítimos.

A diferença prática aparece na privacidade. O Google reCAPTCHA v3 envia sinais de navegação para servidores do Google, o que pesa em sites sob LGPD. O Cloudflare Turnstile e o hCaptcha oferecem verificação sem rastreamento de perfil, uma alternativa que a gente recomenda no suporte da FULL para lojas e portais que coletam dados sensíveis. O Really Simple CAPTCHA, por sua vez, gera uma imagem local sem depender de API externa, útil quando o site não pode chamar serviços de terceiros.

O peso do desafio mudou entre <time datetime="2018">2018</time> e <time datetime="2026">2026</time>: a geração visível de imagens deu lugar à pontuação de risco invisível, que na maioria dos cenários testados reduz o abandono no formulário. Em sites com tráfego acima de 50 mil visitas por mês, a gente tende a ver o reCAPTCHA v3 marcar usuários reais como suspeitos em horários de pico de bot; nesses casos, trocar pelo Turnstile costuma estabilizar a taxa de acesso sem afrouxar a barreira.

---

## Como instalar e configurar o captcha no login: Passo a passo

Configurar o captcha no login leva menos de 10 minutos com um plugin de segurança. O caminho mais direto usa o All in One Security, incluído nos planos da FULL, que adiciona o captcha à tela `wp-login.php` sem editar código, em 4 passos.

Os quatro passos abaixo cobrem instalação, escolha do provedor, aplicação ao login e teste. Faça em homologação antes de produção se o site tiver tráfego alto.

<p class="wp-caption-text">Legenda: a aba de login do plugin mostra o captcha aplicado antes da validação de senha.</p>

### Passo 1: Instale o plugin de segurança

Acesse Plugins, Adicionar novo, busque por All in One Security (AIOS) e clique em Instalar e Ativar. O plugin é gratuito na versão base e cobre captcha, limite de login e <a href="https://full.services/glossario/firewall-wordpress/">firewall</a> em um só painel. Em sites da base FULL, ele ativa em 1 clique junto com o restante do pacote de segurança gerenciada.

### Passo 2: Gere as chaves do provedor de captcha

Escolha o provedor e gere o par de chaves. No Cloudflare Turnstile, crie um widget no painel da Cloudflare e copie a Site Key e a Secret Key. No Google reCAPTCHA, registre o domínio no admin do reCAPTCHA e selecione v2 ou v3. Guarde as duas chaves: sem a Secret Key, a validação no servidor falha e nada é bloqueado.

### Passo 3: Aplique o captcha à tela de login

No menu do AIOS, vá em Brute Force, aba captcha, cole as chaves e marque a opção de exibir o captcha na página de login. Salve e o desafio passa a aparecer no `wp-login.php`. Ative também o limite de tentativas na mesma seção: o desafio barra o robô, e o rate limiting bloqueia o IP que insistir, fechando a <a href="https://full.services/glossario/brute-force/">força bruta</a> por dois lados.

### Passo 4: Teste em uma janela anônima

Abra `wp-login.php` em uma aba anônima e confirme que o desafio aparece antes do botão de acesso. Tente logar com senha errada três vezes seguidas e veja se o IP é bloqueado. Se o desafio não renderizar, o erro quase sempre está na Site Key trocada ou no domínio não autorizado no painel do provedor.

---

## Por que captcha sozinho não fecha o buraco (cves reais)

O desafio trava o volume automatizado, mas formulário vulnerável abre porta mesmo com o desafio ativo. A falha CVE-2020-35489 no Contact Form 7 recebeu CVSS 10.0 (crítica) no <a href="https://nvd.nist.gov/vuln/detail/CVE-2020-35489">NVD/NIST</a> por permitir upload irrestrito de arquivos em versões anteriores à 5.3.2.

Já a CVE-2023-6449 no mesmo plugin, com CVSS 7.2 (alta) segundo o <a href="https://nvd.nist.gov/vuln/detail/CVE-2023-6449">NVD/NIST</a>, afetava versões abaixo da 5.8.4. Ambas já foram corrigidas; o risco hoje é rodar uma versão antiga.

A FULL é a única empresa brasileira reconhecida como CVE Numbering Authority (CNA) pela CISA desde maio de 2022, autorizada a atribuir IDs CVE oficiais. Quem cataloga vulnerabilidade trata captcha como uma camada de um conjunto, não como bala de prata. Segundo o perfil público do WPVulnerability, o Contact Form 7 acumula 12 CVEs históricos, todas com patch disponível, um sinal de manutenção ativa. A lição operacional: mantenha plugin de formulário atualizado e combine com <a href="https://full.services/plugin-seguranca-wordpress/">plugin de segurança WordPress</a> que cubra firewall e limite de login.

---

## Proteção gerenciada FULL: Captcha no bundle, não na hospedagem

A configuração manual de captcha funciona, mas exige repetir o processo em cada site e atualizar cada plugin. No plano PRO da FULL (R$849,90 por ano), a segurança gerenciada com anti-bot e proteção de login já vem ativada no bundle, ao lado de 17 plugins premium.

Dividido pelos 10 sites do plano, sai a R$85 por site ao ano, um custo que a gente vê pesar bem menos que uma única limpeza de site invadido. Conheça os <a href="https://full.services/planos">planos da FULL</a> para ativar a proteção em todos os seus sites de uma vez.

Vale o reforço: a FULL não hospeda seu site. A proteção entra como camada de software gerenciada sobre o WordPress que você já tem, complementar à sua hospedagem atual, com o captcha e o monitoramento de vulnerabilidade ativados em 1 clique.

---

## Como validar que o captcha está bloqueando de verdade

Um desafio mal configurado dá falsa sensação de segurança: aparece na tela, mas não valida no servidor. Faça três checagens. Tente enviar o login sem resolver o desafio; se passar, a Secret Key não valida. Monitore o log do AIOS por 48 horas. Rode um scanner externo.

Use o <a href="https://security.full.services">FULL Scan</a> para verificar gratuitamente se algum plugin do site está com versão vulnerável conhecida, incluindo o de formulário. Em sites da base FULL, cruzar o log de login com o scanner reduziu o tempo médio de detecção de tentativa ativa, porque o desafio mostra o que foi barrado e o scanner mostra o que ainda está exposto. A combinação dá visibilidade real, não só a tela do bloqueio.

Um detalhe que escapa em quase toda configuração: o reCAPTCHA v2 e o v3 deixam de carregar quando o visitante usa uma rede que bloqueia domínios do Google, e o login fica sem proteção sem aviso no painel. Em ambientes corporativos com proxy restritivo, a gente vê esse silêncio derrubar a barreira; o Turnstile, servido pela rede da Cloudflare, contorna o problema na maioria desses casos.

---

<h2 id="faq">Perguntas frequentes sobre captcha no WordPress</h2>

<details>
  <summary>É possível usar captcha no login sem perder visitantes legítimos?</summary>
  <p>Sim. Um captcha invisível como o Cloudflare Turnstile ou o reCAPTCHA v3 valida o visitante em segundo plano e só mostra desafio quando o risco passa do limite. Em telas de login, isso mantém o acesso de usuários reais praticamente sem atrito, ao contrário do reCAPTCHA v2, que sempre exige um clique e às vezes um desafio de imagens.</p>
</details>

<details>
  <summary>Por que o captcha barra a força bruta mesmo com a senha já vazada?</summary>
  <p>Porque a verificação bloqueia antes da etapa de senha. O robô precisa resolver o desafio para que o formulário de login chegue a ser processado, e ferramentas automatizadas não passam de um Turnstile ou reCAPTCHA v3. Mesmo com a senha correta em mãos, o atacante automatizado trava na verificação e não consegue disparar as milhares de tentativas por minuto que caracterizam a força bruta.</p>
</details>

<details>
  <summary>Qual plugin de captcha escolher para o WordPress?</summary>
  <p>Para a maioria dos sites, o All in One Security cobre captcha no login, limite de tentativas e firewall em um só painel, e é o que a FULL ativa nos planos. Se a prioridade é privacidade sob LGPD, combine com o Cloudflare Turnstile, que verifica sem rastrear o perfil do visitante. O Really Simple CAPTCHA serve quando o site não pode chamar APIs externas.</p>
</details>

<details>
  <summary>O captcha sozinho protege o login do WordPress?</summary>
  <p>Não. O captcha barra o volume automatizado, mas precisa de companhia para fechar o login. Combine com limite de tentativas por IP, senha forte e <a href="https://full.services/two-factor-authentication-wordpress/">autenticação de dois fatores</a>. O captcha impede o robô de testar senhas em massa; o 2FA impede o login mesmo quando uma senha válida vaza. Juntas, as camadas cobrem tanto o ataque automatizado quanto o vazamento de credencial.</p>
</details>

<details>
  <summary>O captcha no login ajuda contra spam em formulários e comentários?</summary>
  <p>Sim, e é onde ele rende mais rápido. O mesmo captcha aplicado ao login pode cobrir o registro, os comentários e os formulários de contato, cortando o cadastro de contas falsas e o envio automatizado. Para combater <a href="https://full.services/spam-wordpress/">spam no WordPress</a> com eficiência, ative o captcha invisível nesses campos e mantenha o plugin de formulário atualizado para evitar falhas como a CVE-2020-35489.</p>
</details>

---

## Próximos passos para blindar o acesso ao seu WordPress

O captcha é a primeira barreira contra robôs no login, mas rende de verdade quando entra num conjunto: limite de tentativas, plugin de formulário atualizado, <a href="https://full.services/two-factor-authentication-wordpress/">autenticação de dois fatores</a> e um scanner que mostra o que está exposto. Configure o desafio invisível para não punir o visitante legítimo, valide a Secret Key no servidor e monitore o log por alguns dias para confirmar a queda de tentativas. Para aprofundar cada camada, o <a href="https://full.services/academy/">FULL Academy</a> reúne os tutoriais e guias de segurança WordPress em um só lugar.
