logo
bars

reCAPTCHA v3
und CapMonster Cloud

Captcha-Lösung, Einbindung auf Ihrer Website und Tests.
Sie haben eine Website mit eingebauter Captcha- oder Bot-Schutzlösung übernommen, aber keinen Zugriff auf den Quellcode? Dann stellt sich schnell die Frage: Welche Lösung ist installiert, ist sie korrekt konfiguriert und wie lässt sie sich testen?

In diesem Artikel haben wir versucht, alle wichtigen Fragen zu beantworten. Der erste Schritt bei der Lösung der Aufgabe besteht darin festzustellen, welches Schutzsystem eingesetzt wird. Dazu können Sie die Liste beliebter Captchas und Anti-Bot-Schutzsysteme heranziehen, in der visuelle Beispiele und zentrale Merkmale aufgeführt sind, die Ihnen helfen, schnell zu erkennen, womit Sie es zu tun haben.

Wenn Sie feststellen, dass auf Ihrer Website reCAPTCHA v3 eingesetzt wird, besteht der nächste Schritt darin, seine Eigenschaften und Funktionsweise genauer zu untersuchen. Ebenfalls in diesem Artikel finden Sie eine Anleitung zur Integration von reCAPTCHA v3, damit Sie vollständig verstehen, wie das System auf Ihrer Website arbeitet. So können Sie nicht nur den aktuellen Schutz besser einschätzen, sondern auch seine Wartung vorausschauend planen.

Was ist Google reCAPTCHA v3
Was ist Google reCAPTCHA v3
reCAPTCHA v3 ist ein unsichtbarer Schutz von Google, der echte Nutzer von Bots unterscheidet, ohne dass eine „Ich bin kein Roboter“-Checkbox nötig ist. Auf der Seite läuft ein verstecktes Skript, das das Verhalten des Besuchers analysiert und einen Vertrauensscore (score) von 0,0 bis 1,0 zurückgibt. Der Entwickler legt einen Schwellenwert fest, unterhalb dessen eine zusätzliche Prüfung oder Blockierung erforderlich sein kann, sodass Schutz ohne zusätzliche Aktionen seitens des Nutzers gewährleistet wird.

Wie man reCAPTCHA v3 über CapMonster Cloud löst

Beim Testen von Formularen mit reCAPTCHA v3 müssen Sie häufig prüfen, ob die Captcha korrekt eingebunden ist und funktioniert.

Sie können die auf Ihrer Seite eingebettete Captcha manuell testen.

  • Öffnen Sie die Formularseite und stellen Sie sicher, dass die Captcha angezeigt wird.
  • Versuchen Sie, das Formular ohne Lösung abzuschicken – der Server sollte einen Fehler melden.
  • Nach einer erfolgreichen Lösung muss das Formular ohne Probleme übermittelt werden.

Für automatisches Lösen können Sie Tools wie CapMonster Cloud einsetzen. Der Dienst nimmt die Captcha-Parameter entgegen, verarbeitet sie auf seinen Servern und liefert einen einsatzbereiten Token zurück. Diesen Token setzen Sie ins Formular ein, um die Prüfung ohne Benutzerinteraktion zu bestehen.

Die Arbeit mit CapMonster Cloud über die API umfasst in der Regel folgende Schritte:

Aufgabe erstellenAufgabe erstellen
arrow
API-Anfrage sendenAPI-Anfrage senden
arrow
Ergebnis empfangenErgebnis empfangen
arrow
Token auf der Seite einsetzenToken auf der Seite einsetzen
arrow
Erkennung von reCAPTCHA v3 mit fertigen Bibliotheken
Der Dienst CapMonster Cloud stellt fertige Bibliotheken für eine komfortable Nutzung mit den Sprachen Python, JavaScript (Node.js) und C# zur Verfügung.
Python
JavaScript
C#
Lösen, Token einsetzen und Formular absenden
Node.js-Beispiel für den vollständigen Zyklus der Captcha-Erkennung auf Ihrer Webseite. Mögliche Vorgehensweisen: HTTP-Anfragen verwenden, um HTML und Captcha-Parameter abzurufen, die Antwort zu senden und das Ergebnis auszuwerten; oder Automatisierungs-Tools (z. B. Playwright) einsetzen — Seite öffnen, auf das Laden des Captcha warten, Parameter senden (für Tests können Sie korrekte wie auch absichtlich falsche Daten senden), das Ergebnis über den CapMonster-Cloud-Client abrufen, den Token in das Formular einfügen und das Ergebnis beobachten.
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 Ihrer Seite mit dem Captcha
  const SITE_KEY = '6Le0xVgUAAAAAIt20XEB4rVhYOODgTl00d8juDob';
  const API_KEY = 'your_capmonster_cloud_api_key'; // Geben Sie Ihren CapMonster-Cloud-API-Schlüssel an

  // CapMonster-Client erstellen
  const cmcClient = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: API_KEY }));

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

  // reCAPTCHA-v3-Aufgabe konfigurieren
  const recaptchaRequest = new RecaptchaV3ProxylessRequest({
    websiteURL: TARGET_URL,
    websiteKey: SITE_KEY,
    minScore: 0.6,
    pageAction: 'myverify', // Übereinstimmung mit der action auf der Seite sicherstellen
  });

  // Captcha lösen
  const solution = await cmcClient.Solve(recaptchaRequest);
  const token = solution.solution?.gRecaptchaResponse;

  if (!token) {
    console.error('Token ist leer, überprüfen Sie sitekey und URL');
    await browser.close();
    return;
  }

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

  // Token in ein verstecktes Feld einfügen und Klick auf den Button emulieren 
  // Durch die benötigten Selektoren ersetzen
  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 wurde eingefügt und das Formular wurde gesendet');

  await page.waitForTimeout(5000);
  await browser.close();
})();
Wie Sie reCAPTCHA v3 auf Ihrer Website einbinden
Um sich sicher in der Funktionsweise des Captchas auf Ihrer Seite zurechtzufinden, die Prüf-Logik zu verstehen und reCAPTCHA bei Bedarf erneut anzubinden oder neu zu konfigurieren, empfehlen wir, diesen Abschnitt zu lesen. Hier wird der Einrichtungsprozess des Schutzes beschrieben – so können Sie alle Details schnell erfassen.

1. Öffnen Sie die Seite des reCAPTCHA-Admin-Panels.

2. Registrieren Sie eine neue Website und wählen Sie als Captcha-Typ reCAPTCHA v3

HowTo Connect image 1

3. Sie erhalten zwei Schlüssel:

  • Site key — öffentlicher Schlüssel (wird im Frontend verwendet);
  • Secret key — geheimer Schlüssel (wird auf dem Server zur Verifizierung verwendet)

HowTo Connect image 2

In den Einstellungen können Sie z. B. zusätzliche Domains angeben, auf denen reCAPTCHA genutzt werden darf, oder Benachrichtigungen bei Problemen auf der Website oder bei einem Anstieg verdächtigen Traffics konfigurieren.

4. Codebeispiele für die Client-Seite

Die einfachste Möglichkeit, reCAPTCHA v3 zu nutzen, besteht darin, die JavaScript-API einzubinden und dem Button entsprechende Attribute hinzuzufügen.

Einbindung der API:

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

Callback-Funktion für das Formular:

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

Button mit reCAPTCHA-Attributen:

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

Für volle Kontrolle verwenden Sie grecaptcha.execute mit dem Parameter render:

Einbindung der API mit dem Schlüssel:

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

Programmgesteuerter Aufruf:

<script>
  function onClick(e) {
    e.preventDefault();
    grecaptcha.ready(function() {
      grecaptcha.execute('reCAPTCHA_sitekey', {action: 'submit'}).then(function(token) {
          // Senden Sie den Token zur Verifizierung an den Server
      });
    });
  }
</script>

Der Token sollte sofort zur Verifizierung an den Server gesendet werden.

Wichtige Hinweise:

  • Gültigkeitsdauer des Tokens: Der von reCAPTCHA v3 erhaltene Token ist 2 Minuten gültig. Stellen Sie sicher, dass Sie ihn innerhalb dieses Zeitraums an den Server senden.
  • Überprüfung auf der Serverseite: Nachdem der Server den Token erhalten hat, senden Sie eine POST-Anfrage an https://www.google.com/recaptcha/api/siteverify mit folgenden Parametern:
    – secret: Ihr geheimer Schlüssel
    – response: der vom Client erhaltene Token
    – remoteip (optional): IP-Adresse des Nutzers
  • Der Google-Server gibt eine JSON-Antwort mit Informationen zum Ergebnis der Überprüfung zurück.

5. Führen Sie nun die Überprüfung der Antwort auf dem Server durch

PHP-BeispielPHP-Beispiel
arrow

Hinweise:

  • Stellen Sie sicher, dass der Token auf der Client-Seite in einem versteckten Formularfeld mit dem Namen recaptcha-token an den Server gesendet wird:
    • <input type="hidden" name="recaptcha-token" id="recaptcha-token">

      • Den score-Schwellenwert können Sie je nach gewünschter Strenge anpassen (z. B. 0,3–0,7).
      • Die Prüfung action === 'submit' erhöht die Sicherheit, da sie sicherstellt, dass der Token für genau diese Aktion auf der Seite ausgegeben wurde.
Background
Mögliche Fehler und Debugging
Bug Icon
Falsche Website oder falscher Schlüssel
Das Captcha wird nicht geladen oder gibt invalid-input-secret zurück.
Bug Icon
Zeitüberschreitung bei der Lösung
Der Server hat nicht rechtzeitig eine Antwort erhalten, erhöhen Sie das Zeitlimit.
Bug Icon
Leerer Token
Fehler bei der Übergabe des Ergebnisses an die Seite.
Bug Icon
Antwort success=false
Der Token ist abgelaufen, erneut verwendet oder manipuliert worden. Aktivieren Sie zur Diagnose das Request-Logging und prüfen Sie das Feld error-codes in der Antwort von Google.
Bug Icon
Niedriger Score (z. B. <0.5)
Kann zu einer Ablehnung führen, selbst wenn success=true ist, da Google das Vertrauen in den Nutzer anhand des Scores bewertet.
Bug Icon
action prüfen
Um sicherzustellen, dass der Token für eine bestimmte Aktion auf der Seite bestimmt ist
Tests der Schutzstabilität
Stellen Sie nach der Integration sicher, dass das System die Website wirklich vor automatisierten Aktionen schützt.
Tipps zu Sicherheit und Optimierung
Speichern Sie den <b>Secret Key</b> ausschließlich auf dem Server und geben Sie ihn nicht an den Client weiter.
Protokollieren Sie Fehlercodes (<b>error-codes</b>) und den <b>score</b>-Wert, um die Gründe für Ablehnungen nachzuvollziehen.
<b>Prüfen Sie das Feld action</b> in der Antwort von Google, um sicherzustellen, dass der Token für die richtige Aktion auf der Seite ausgestellt wurde.
Fügen Sie am Ende des Formulars Links zur <b>Datenschutzerklärung</b> und zu den <b>Nutzungsbedingungen von Google</b> hinzu, wie es die Lizenz fordert.
Fazit

Wenn Sie eine Website übernommen haben, auf der bereits ein Captcha oder ein anderes Schutzsystem installiert ist und Sie keinen Zugriff auf den Code haben, ist das kein Problem! Es ist ziemlich einfach festzustellen, welche Technologie genau verwendet wird. Und um die korrekte Funktionsweise zu überprüfen, können Sie den Erkennungsdienst CapMonster Cloud in einer isolierten Testumgebung nutzen, um sicherzustellen, dass der Mechanismus zur Tokenverarbeitung und die Prüflogik ordnungsgemäß funktionieren.

Im Fall von reCAPTCHA v3 reicht es aus, das System zu erkennen, sein Verhalten zu analysieren und sich zu vergewissern, dass der Schutz korrekt arbeitet. In diesem Artikel haben wir gezeigt, wie Sie reCAPTCHA v3 identifizieren und wo Sie Anleitungen für die Einbindung oder Neukonfiguration finden, damit Sie den Schutz zuverlässig betreiben und seine Arbeit unter Kontrolle halten können.

Conclusion