logo
bars

reCAPTCHA v3
e CapMonster Cloud

Solução de captcha, instalação no site e testes.
Você herdou um site com captcha ou outra camada de proteção, mas não tem acesso ao código-fonte? Então é normal querer saber qual solução está instalada, se a configuração está correta e como testar tudo.

Neste artigo, procuramos responder a todas as principais dúvidas. Para começar a resolver o problema, o primeiro passo é identificar qual sistema de proteção está sendo utilizado. Para isso, você pode consultar a lista de captchas e sistemas de proteção antibot mais populares, onde há exemplos visuais e sinais principais que ajudam a identificar rapidamente com o que você está lidando.

Se você notar que o seu site utiliza reCAPTCHA v3, o passo seguinte é estudar com mais detalhes as suas características e o seu funcionamento. Neste mesmo artigo, você também pode conferir o guia de integração do reCAPTCHA v3, para entender por completo como o sistema opera no seu site. Isso permitirá não apenas compreender a proteção atual, mas também planejar adequadamente a sua manutenção.

O que é o Google reCAPTCHA v3
O que é o Google reCAPTCHA v3
reCAPTCHA v3 é uma proteção invisível do Google que diferencia usuários reais de bots sem a necessidade da caixa de seleção “Não sou um robô”. Um script oculto é executado na página, analisa o comportamento do visitante e retorna uma pontuação de confiança (score) de 0,0 a 1,0. O desenvolvedor define um limite abaixo do qual pode ser exigida uma verificação adicional ou até o bloqueio, garantindo proteção sem ações extras por parte do usuário.

Como resolver o reCAPTCHA v3 usando o CapMonster Cloud

Ao testar formulários com reCAPTCHA v3, é comum precisar confirmar se a captcha está funcionando e integrada corretamente.

Você pode testar manualmente a captcha incorporada no site.

  • Abra a página do formulário e veja se a captcha é exibida.
  • Tente enviar sem resolver — o servidor deve retornar erro.
  • Depois de resolver corretamente, o envio precisa ocorrer sem falhas.

Para resolver automaticamente use ferramentas como o CapMonster Cloud, que recebe os parâmetros da captcha, processa em seus servidores e devolve um token pronto. Basta inseri-lo no formulário para passar na verificação sem interação humana.

Trabalhar com o CapMonster Cloud via API normalmente envolve as etapas abaixo:

Criação da tarefaCriação da tarefa
arrow
Envio da requisição APIEnvio da requisição API
arrow
Recebimento do resultadoRecebimento do resultado
arrow
Aplicação do token na páginaAplicação do token na página
arrow
Reconhecimento do reCAPTCHA v3 com bibliotecas prontas
O serviço CapMonster Cloud fornece bibliotecas prontas para uso conveniente com as linguagens Python, JavaScript (Node.js) e C#.
Python
JavaScript
C#
Resolução, inserção do token e envio do formulário
Exemplo em Node.js para o ciclo completo de reconhecimento do captcha na sua página web. Abordagens possíveis: usar requisições HTTP para obter o HTML e os parâmetros do captcha, enviar a resposta e processar o resultado; ou, com ferramentas de automação (por exemplo, Playwright), abrir a página, aguardar o carregamento do captcha, enviar os parâmetros (para testes, você pode enviar dados corretos ou incorretos), obter o resultado por meio do cliente do CapMonster Cloud, inserir o token no formulário e visualizar o resultado.
const { chromium } = require('playwright');
const { 
  CapMonsterCloudClientFactory, 
  ClientOptions, 
  RecaptchaV3ProxylessRequest 
} = require('@zennolab_com/capmonstercloud-client');

(async () => {
  const TARGET_URL = 'https://lessons.zennolab.com/captchas/recaptcha/v3.php?level=beta'; // URL da sua página com o captcha
  const SITE_KEY = '6Le0xVgUAAAAAIt20XEB4rVhYOODgTl00d8juDob';
  const API_KEY = 'your_capmonster_cloud_api_key'; // Informe sua chave de API do CapMonster Cloud

  // Criando o cliente do CapMonster
  const cmcClient = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: API_KEY }));

  // Abrindo o navegador
  const browser = await chromium.launch({ headless: false });
  const page = await browser.newPage();
  await page.goto(TARGET_URL, { waitUntil: 'domcontentloaded' });

  // Configuração da tarefa do reCAPTCHA v3
  const recaptchaRequest = new RecaptchaV3ProxylessRequest({
    websiteURL: TARGET_URL,
    websiteKey: SITE_KEY,
    minScore: 0.6,
    pageAction: 'myverify', // correspondência com o action na página
  });

  // Resolvendo o captcha
  const solution = await cmcClient.Solve(recaptchaRequest);
  const token = solution.solution?.gRecaptchaResponse;

  if (!token) {
    console.error('O token está vazio, verifique a sitekey e a URL');
    await browser.close();
    return;
  }

  console.log('Token recebido:', token);

  // Inserindo o token em um campo oculto e simulando o clique no botão 
  // Substitua pelos seletores necessários
  await page.evaluate((t) => {
    const input = document.querySelector('#v3_token');
    if (input) input.value = t;

    const form = document.querySelector('#v3_form');
    if (form) form.submit();
  }, token);

  console.log('Token inserido e formulário enviado');

  await page.waitForTimeout(5000);
  await browser.close();
})();
Como conectar o reCAPTCHA v3 ao seu site
Para entender bem como o captcha funciona no seu site, a lógica de validação, e como reconectar ou reconfigurar a proteção, recomendamos estudar esta seção. Nela, é descrito o processo de conexão da proteção — isso ajudará você a compreender rapidamente todos os detalhes.

1. Acesse a página do painel de administração do reCAPTCHA.

2. Registre um novo site e escolha o tipo de captcha — reCAPTCHA v3

HowTo Connect image 1

3. Obtenha duas chaves:

  • Site key — chave pública (usada no frontend);
  • Secret key — chave privada (usada no servidor para verificação)

HowTo Connect image 2

Você pode abrir as configurações, onde é possível, por exemplo, especificar os domínios nos quais o reCAPTCHA será utilizado ou configurar alertas sobre problemas no site ou aumento de tráfego suspeito.

4. Exemplos de código para o lado do cliente

A maneira mais simples de usar o reCAPTCHA v3 é conectar a API JavaScript e adicionar atributos a um botão.

Conectando a API:

<script src="https://www.google.com/recaptcha/api.js"></script>

Função de callback para o formulário:

<script>
  function onSubmit(token) {
    document.getElementById("form").submit();
  }
</script>

Botão com atributos do reCAPTCHA:

<button class="g-recaptcha" 
        data-sitekey="reCAPTCHA_sitekey" 
        data-callback='onSubmit' 
        data-action='submit'>Submit</button>

Para controle total, use grecaptcha.execute com o parâmetro render:

Conectando a API com a chave:

<script src="https://www.google.com/recaptcha/api.js?render=reCAPTCHA_site_key"></script>

Chamada programática:

<script>
  function onClick(e) {
    e.preventDefault();
    grecaptcha.ready(function() {
      grecaptcha.execute('reCAPTCHA_sitekey', {action: 'submit'}).then(function(token) {
          // Envie o token para o servidor para verificação
      });
    });
  }
</script>

O token deve ser enviado imediatamente ao servidor para verificação.

Observações importantes:

  • Validade do token: o token recebido do reCAPTCHA v3 é válido por 2 minutos. Certifique-se de enviá-lo ao servidor dentro desse período.
  • Verificação no servidor: após receber o token no servidor, envie uma requisição POST para https://www.google.com/recaptcha/api/siteverify com os parâmetros:
    – secret: sua chave secreta
    – response: o token recebido do cliente
    – remoteip (opcional): endereço IP do usuário
  • O servidor do Google retornará uma resposta JSON contendo informações sobre o resultado da verificação.

5. Agora, no lado do servidor, faça a validação da resposta

Exemplo em PHPExemplo em PHP
arrow

Observações:

  • Certifique-se de que, no cliente, o token seja enviado em um campo oculto do formulário com o nome recaptcha-token:
    • <input type="hidden" name="recaptcha-token" id="recaptcha-token">

      • O limite do score pode ser ajustado de acordo com o nível de rigor desejado (por exemplo, 0,3–0,7).
      • A validação de action === 'submit' aumenta a segurança, garantindo que o token foi gerado para a ação correta na página.
Background
Possíveis erros e depuração
Bug Icon
Site ou chave incorretos
O captcha não é carregado ou retorna invalid-input-secret.
Bug Icon
Tempo limite de resolução
O servidor não recebeu a resposta a tempo, aumente o tempo de espera.
Bug Icon
Token vazio
Erro ao enviar o resultado para a página.
Bug Icon
Resposta success=false
O token está expirado, foi reutilizado ou foi adulterado. Para diagnóstico, ative o log das requisições e verifique o campo error-codes na resposta do Google.
Bug Icon
Score baixo (por exemplo, <0.5)
Pode levar à recusa mesmo com success=true, já que o Google avalia o nível de confiança no usuário.
Bug Icon
Verifique o action
Para garantir que o token foi emitido para uma ação específica da página
Verificação da robustez
Depois da integração, confirme que o sistema de fato protege o site contra ações automatizadas.
Recomendações de segurança e otimização
Armazene a <b>Secret Key</b> apenas no servidor, não a envie para o lado do cliente.
Registre os códigos de erro (<b>error-codes</b>) e o valor de <b>score</b> para entender os motivos das rejeições.
<b>Verifique o campo action</b> na resposta do Google para garantir que o token foi emitido para a ação correta na página.
Adicione ao final do formulário links para a <b>Política de Privacidade</b> e os <b>Termos de Uso do Google</b>, conforme exigido pela licença.
Conclusão

Se você herdou um site que já tem um captcha ou outro sistema de proteção instalado e não tem acesso ao código, não tem problema! É bem fácil identificar qual tecnologia está sendo usada. Para verificar se tudo está funcionando corretamente, você pode usar o serviço de reconhecimento CapMonster Cloud em um ambiente de testes isolado, para garantir que o mecanismo de processamento de tokens e a lógica de verificação estejam funcionando corretamente.

No caso de reCAPTCHA v3, basta identificar o sistema, analisar o comportamento dele e se certificar de que a proteção está funcionando corretamente. No artigo, mostramos como identificar reCAPTCHA v3 e onde encontrar instruções para a integração ou reconfiguração, para que você consiga manter a proteção com segurança e controlar o funcionamento dela.

Conclusion