logo
bars

MTCaptcha
en CapMonster Cloud

Captcha-oplossing, installatie op de website en testen.
Heb je een site geërfd met een ingebouwde captcha of andere bescherming, maar zonder toegang tot de broncode? Dan wil je natuurlijk weten welke oplossing draait, of die goed is ingesteld en hoe je de werking test.

In dit artikel hebben we geprobeerd antwoord te geven op alle belangrijke vragen. De eerste stap bij het oplossen van het vraagstuk is vaststellen welk beveiligingssysteem wordt gebruikt. Daarvoor kun je de lijst met populaire captcha’s en anti-botbeveiligingssystemen raadplegen, met visuele voorbeelden en kernkenmerken die je helpen snel te bepalen waarmee je te maken hebt.

Als je ontdekt dat je website MTCaptcha gebruikt, is de volgende stap om de eigenschappen en werking ervan uitgebreider te bestuderen. In dit artikel vind je ook een handleiding voor het integreren van MTCaptcha, zodat je volledig begrijpt hoe het systeem op je website werkt. Zo kun je niet alleen de huidige bescherming beter doorgronden, maar ook het onderhoud ervan goed plannen.

Wat is MTCaptcha
Wat is MTCaptcha
MTCaptcha is een systeem om websites te beschermen tegen geautomatiseerde acties, met gebruik van intelligente verificatie en captcha. Het systeem analyseert eerst het verkeer op de achtergrond. Als het gedrag van een bezoeker verdacht lijkt, toont het automatisch een tekstcaptcha voor extra controle.

Hoe MTCaptcha op te lossen via CapMonster Cloud

Bij het testen van formulieren met MTCaptcha moet je vaak bevestigen dat de captcha goed is ingebouwd en werkt.

Je kunt de captcha op je site handmatig testen.

  • Open de pagina met het formulier en controleer of de captcha verschijnt.
  • Probeer het formulier te versturen zonder oplossing — de server hoort een fout terug te geven.
  • Na een succesvolle oplossing moet het formulier probleemloos worden verzonden.

Voor automatische oplossingen kun je tools zoals CapMonster Cloud gebruiken. Deze ontvangen de captcha-parameters, verwerken ze op hun servers en sturen een token terug dat je in het formulier kunt zetten om de controle zonder gebruikersinteractie te omzeilen.

Werken met CapMonster Cloud via de API bestaat doorgaans uit de volgende stappen:

Taak aanmakenTaak aanmaken
arrow
API-aanvraag versturenAPI-aanvraag versturen
arrow
Resultaat ontvangenResultaat ontvangen
arrow
Token op de pagina plaatsenToken op de pagina plaatsen
arrow
MTCaptcha-herkenning met kant-en-klare bibliotheken
De CapMonster Cloud-service biedt kant-en-klare bibliotheken voor eenvoudig gebruik in Python, JavaScript (Node.js) en C#.
Python
JavaScript
C#
Oplossen, token invoegen en formulier verzenden
Node.js-voorbeeld voor de volledige captcha-herkenningscyclus op uw webpagina. Mogelijke benaderingen: gebruik HTTP-verzoeken om HTML en captcha-parameters te verkrijgen, stuur de reactie en verwerk het resultaat; of gebruik automatiseringstools (bijv. Playwright) — open de pagina, wacht op de captcha, stuur parameters (voor testen kunt u correcte of incorrecte gegevens verzenden), ontvang resultaat via CapMonster Cloud-client, plaats token in het formulier en bekijk het resultaat.

  // npm install playwright @zennolab_com/capmonstercloud-client
import { chromium } from 'playwright';
import { CapMonsterCloudClientFactory, ClientOptions, MTCaptchaRequest } from '@zennolab_com/capmonstercloud-client';

const API_KEY = 'YOUR_API_KEY';
const TARGET_URL = 'https://example.com';

async function main() {
  const browser = await chromium.launch({ headless: false });
  const context = await browser.newContext();
  const page = await context.newPage();

 
  let websiteKey = null;
  page.on('request', request => {
    const url = request.url();
    if (url.startsWith('https://service.mtcaptcha.com/mtcv1/api/getchallenge.json')) {
      const params = new URL(url).searchParams;
      const sk = params.get('sk');
      if (sk) {
        websiteKey = sk;
        console.log('Extracted websiteKey (sk):', websiteKey);
      }
    }
  });

  
  await page.goto(TARGET_URL, { waitUntil: 'networkidle' });

  if (!websiteKey) {
    console.error('Failed to extract websiteKey (sk) from the page');
    await browser.close();
    return;
  }

  
  const client = CapMonsterCloudClientFactory.Create(
    new ClientOptions({ clientKey: API_KEY })
  );

  
  const mtcaptchaRequest = new MTCaptchaRequest({
    websiteURL: TARGET_URL,
    websiteKey: websiteKey,
    isInvisible: false,
    pageAction: 'login'
  });

  // Captcha oplossen
  const result = await client.Solve(mtcaptchaRequest);

  
  const verifiedToken = typeof result?.solution?.value === 'string'
    ? result.solution.value
    : JSON.stringify(result.solution.token);

  console.log('VerifiedToken:', verifiedToken);

  
  // Token invoegen en formulier verzenden (vervang door de juiste selector)
  await page.evaluate((token) => {
    const input = document.querySelector('#mtcaptcha-verifiedtoken-1');
    if (input) input.value = token;
  }, verifiedToken);

  console.log('Token inserted into input');

  
  // await page.click('button[type="submit"]');

  await page.waitForTimeout(5000);

  await browser.close();
}

main().catch(err => {
  console.error('An error occurred:', err);
});
Hoe MTCaptcha op uw site aan te sluiten
Om het functioneren van captcha op uw site goed te begrijpen, de logica te kennen, opnieuw te verbinden of opnieuw in te stellen, raden wij u aan dit gedeelte te bestuderen. Het beschrijft het proces van het aansluiten van de bescherming — dit helpt om snel alle details te begrijpen.

1. Registreer of log in op uw MTCaptcha-account.

2. Voeg na registratie uw site toe. U ontvangt twee sleutels.

  • Site Key — publieke sleutel voor frontend om de widget te tonen.
  • Private Key — private sleutel voor de server om de captcha-oplossingen te verifiëren. Bewaar deze alleen op de server, geef deze niet door aan de client.

Voorbeeld:

HowTo Connect image 1

3. Configureer de MTCaptcha-client:

Plaats de code in <head> van de pagina.

Vervang <YOUR SITE KEY> door uw Site Key verkregen uit het MTCaptcha-dashboard.


  <head>
  <script>
    var mtcaptchaConfig = {
      sitekey: "<YOUR SITE KEY>"
    };
  
    (function() {
      var mt_service = document.createElement('script');
      mt_service.async = true;
      mt_service.src = 'https://service.mtcaptcha.com/mtcv1/client/mtcaptcha.min.js';
      (document.head || document.body).appendChild(mt_service);
  
      var mt_service2 = document.createElement('script');
      mt_service2.async = true;
      mt_service2.src = 'https://service2.mtcaptcha.com/mtcv1/client/mtcaptcha2.min.js';
      (document.head || document.body).appendChild(mt_service2);
    })();
  </script>
</head>


Voeg de captcha-container toe aan <body>

Waar u de captcha wilt weergeven (bijv. binnen een formulier):

<div class="mtcaptcha"></div>

De widget wordt automatisch geladen.

HelpIcon

U kunt kant-en-klare SDK en plugins gebruiken voor snelle integratie:

  • Server-side SDKs: Java, Node.js, PHP
  • Client-side SDKs: React, React Native, Vue
  • CMS-plugins: WordPress, Drupal

MTCaptcha biedt ook een handige demopagina om de bescherming te testen en in te stellen voordat u deze op uw site implementeert.

4. Server-side werken. Verkrijg Verified-Token op de client.

Via een verborgen formulierveld:

<input type="hidden" name="mtcaptcha-verifiedtoken" />

Of via JS:

mtcaptcha.getVerifiedToken() / mtcaptchaVerifiedCallback(status)

Stuur de token naar de server samen met het formulier of verzoek.

Controleer de token via API (server-side verificatie):

GET https://service.mtcaptcha.com/mtcv1/api/checktoken?privatekey=<PRIVATE_KEY>&token=<TOKEN>
  • privatekey — uw private sleutel (alleen server)
  • token — token van de client

Alternatieve URL voor servers met firewall:

https://service2.mtcaptcha.com/mtcv1/api/checktoken

Verwerk de respons:

success: true → captcha geslaagd, ga door met verwerken.

VoorbeeldVoorbeeld
arrow

success: false → fout (token verlopen, hergebruik, enz.)

HelpIcon
Elke verifiedToken is enkele minuten geldig en kan slechts één keer worden gecontroleerd via de CheckToken API, wat hergebruik voorkomt. Na ontvangst van de token moet de server deze verifiëren — de MTCaptcha-widget garandeert minimaal 50 seconden validatie.

Eenvoudig voorbeeld met het MTCaptcha-module in Node.jsEenvoudig voorbeeld met het MTCaptcha-module in Node.js
arrow

HelpIcon

Voor een diepgaandere studie van MTCaptcha-functionaliteiten — widgetcustomisatie, client/server configuratie, framework-integratie en andere aspecten — raadpleeg de officiële documentatie.

Background
Mogelijke fouten en debugging
Bug Icon
Ongeldige site of sleutel
Captcha laadt niet of de server retourneert invalid-privatekey of privatekey-mismatch-token. Zorg dat u het juiste sitekey en privatekey paar gebruikt.
Bug Icon
Token ontbreekt of is ongeldig
Fouten missing-input-token, invalid-token, bad-request. Controleer of de tokenwaarde naar de server wordt verzonden en niet is gewijzigd.
Bug Icon
Verlopen token (token-expired)
Token is slechts tijdelijk geldig (meestal ~120 seconden) en moet daarna opnieuw worden verkregen.
Bug Icon
Token opnieuw controleren (token-duplicate-cal)
Token kan slechts één keer worden gecontroleerd — bescherming tegen replay-aanvallen.
Bug Icon
Verlopen of gedeactiveerde sleutel (expired-sitekey-or-account)
Zorg dat de sleutels actueel zijn en het account actief is.
Bug Icon
Schakel logboekregistratie van verzoeken in en toon fail_codes om de oorzaak van de fout te begrijpen.
Controle van de robuustheid
Aanbevelingen voor veiligheid en optimalisatie
Bewaar de <b>privatekey alleen op de server</b> — geef deze niet door aan de client.
Log <b>fail_codes</b> om foutoorzaken te volgen en pogingen tot beveiligingsomzeiling te analyseren.
Plaats links naar het <b>privacybeleid</b> en de <b>gebruiksvoorwaarden</b> op het formulier indien dit is vereist door het platformbeleid.
Conclusie

Als je een website in beheer krijgt waarop al een captcha of een ander beveiligingssysteem is geïnstalleerd en je geen toegang hebt tot de code, is dat geen probleem! Het is vrij eenvoudig te bepalen welke technologie precies wordt gebruikt. Voor het controleren of alles correct werkt, kun je de herkenningsservice CapMonster Cloud in een geïsoleerde testomgeving gebruiken, zodat je zeker weet dat het tokenverwerkingsmechanisme en de validatielogica correct functioneren.

In het geval van MTCaptcha is het voldoende om het systeem te herkennen, het gedrag te analyseren en te bevestigen dat de beveiliging correct werkt. In het artikel hebben we laten zien hoe je MTCaptcha kunt herkennen en waar je instructies vindt om het te koppelen of opnieuw te configureren, zodat je de bescherming met vertrouwen kunt onderhouden en de werking onder controle kunt houden.

Conclusion