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.
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.
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:
In der Anfrage zum Lösen von reCAPTCHA v3 müssen Sie die folgenden Parameter angeben:
type - RecaptchaV3TaskProxyless;
websiteURL - die Adresse der Seite, auf der das Captcha gelöst wird;
websiteKey - der Schlüssel-Identifikator (sitekey), der auf der Seite Ihrer Website mit dem Captcha angegeben ist;
minScore - kann einen Wert von 0.1 bis 0.9 haben;
pageAction - der Wert des action-Parameters, der vom ReCaptcha-Widget in Google übermittelt wird. Standardwert: verify.
https://api.capmonster.cloud/createTask{
"clientKey": "API_KEY",
"task": {
"type": "RecaptchaV3TaskProxyless",
"websiteURL": "https://lessons.zennolab.com/captchas/recaptcha/v3.php?level=beta",
"websiteKey": "6Le0xVgUAAAAAIt20XEB4rVhYOODgTl00d8juDob",
"minScore": 0.7,
"pageAction": "myverify"
}
}
{
"errorId":0,
"taskId":407533072
}
https://api.capmonster.cloud/getTaskResult{
"clientKey":"API_KEY",
"taskId": 407533072
}
{
"errorId": 0,
"status": "ready",
"solution": {
"gRecaptchaResponse": "3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKv…hKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3"
}
}
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('Токен пустой, проверьте sitekey и 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();
})();1. Öffnen Sie die Seite des reCAPTCHA-Admin-Panels.
2. Registrieren Sie eine neue Website und wählen Sie als Captcha-Typ reCAPTCHA v3

3. Sie erhalten zwei Schlüssel:

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:
5. Führen Sie nun die Überprüfung der Antwort auf dem Server durch
<?php
// Ihr geheimer reCAPTCHA-v3-Schlüssel (Secret Key)
$secret = 'YOUR_SECRET_KEY';
// Token aus dem Formular auslesen
$token = $_POST['recaptcha-token'] ?? '';
// Anfrage an Google senden, um den Token zu überprüfen
$response = file_get_contents(
"https://www.google.com/recaptcha/api/siteverify?secret={$secret}&response={$token}"
);
$result = json_decode($response, true);
// Erfolg und Vertrauensscore prüfen
if ($result['success'] && $result['score'] >= 0.5 && $result['action'] === 'submit') {
echo "Überprüfung erfolgreich";
} else {
http_response_code(403);
echo "Überprüfung fehlgeschlagen";
}
?>
Hinweise:
<input type="hidden" name="recaptcha-token" id="recaptcha-token">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.