CAPTCHA en botbescherming
Wat is een CAPTCHA en wat doet het?
Een CAPTCHA is een test die moet uitmaken of een bezoeker een mens is of een geautomatiseerd programma. Denk aan een vervormde letterreeks, plaatjes waarop je verkeerslichten moet aanwijzen, of een vinkje dat je moet zetten. Het doel is geautomatiseerd misbruik van een formulier of inlogpagina af te remmen, zonder dat echte bezoekers er veel last van hebben.
De naam is een afkorting van een Engelse omschrijving die precies zegt waar het om gaat: een openbare test om computers en mensen uit elkaar te houden.
Welke bots geven websites problemen?
Niet elke bot is kwaad. Zoekmachines sturen bots om pagina's te indexeren, en die wil je juist toelaten. Het probleem zijn de bots die misbruik maken van je site. Daarbij gaat het vaak om:
- Formulierspam: bots die contactformulieren, reacties of aanmeldpagina's vullen met reclame of links.
- Nepaccounts: geautomatiseerde registraties die een ledenlijst of webwinkel vervuilen.
- Scrapers: programma's die teksten, prijzen of afbeeldingen massaal kopiëren.
- Inlogaanvallen: bots die duizenden wachtwoorden proberen, zie brute-force-aanvallen.
Zulke bots belasten je server en dataverkeer en vervuilen je statistieken. Een deel van het bezoek dat je ziet, komt dan niet van mensen. Als bots de server zwaar belasten, kan het lijken op een DDoS-aanval.
Hoe werken CAPTCHA's en onzichtbare botdetectie?
Klassieke CAPTCHA's vragen de bezoeker om een taak die voor mensen makkelijk is en voor programma's lastig. Veel moderne varianten werken op de achtergrond. Ze beoordelen gedrag, zoals hoe snel een formulier wordt ingevuld en of het gedrag menselijk oogt, en tonen alleen bij twijfel een uitdaging. Dat is prettiger voor bezoekers, maar het blijft een inschatting en geen zekerheid.
Er bestaan ook eenvoudige maatregelen met weinig hinder, zoals een verborgen veld in een formulier dat alleen bots invullen, of een limiet op het aantal pogingen per IP-adres.
Er zijn ook nadelen. Een CAPTCHA kost bezoekers tijd en frustratie. Voor mensen met een visuele of motorische beperking, of voor wie een hulpmiddel gebruikt, kan een test onbegaanbaar zijn. Kies daarom een oplossing die toegankelijk is en controleer die regelmatig. Ook beschermt een CAPTCHA niet tegen elke aanval, omdat geautomatiseerde tools tests soms kunnen omzeilen. Een web application firewall kan verdacht verkeer aanvullend filteren. Vraag je hoster welke botfiltering beschikbaar is.
Veelgestelde vragen
Helpt een CAPTCHA tegen spam in mijn contactformulier?
Ja, een CAPTCHA of een vergelijkbare botcontrole vermindert formulierspam meestal sterk. Geen enkele maatregel stopt alles, en een te zware test kan echte bezoekers wegjagen. Combineer daarom liever een lichte controle met een limiet op het aantal verzendingen en een goed spamfilter.
Wat is het verschil tussen een goede en een kwaadaardige bot?
Een goede bot identificeert zichzelf, houdt zich aan de gangbare spelregels en is nuttig, zoals de bots van zoekmachines. Een kwaadaardige bot verbergt zijn identiteit, negeert die spelregels en probeert misbruik te maken van formulieren, accounts of gegevens. In de praktijk is het onderscheid niet altijd scherp, dus blokkeer niet blind.