Kort samengevat: canvas, cadans en cursor signalen om AI-agents te blokkeren
- Drie verdedigingen, allemaal omzeild: Elke stack bevat een WAF, een CDN-botmanager en een CAPTCHA. OpenAI Operator, Claude for Chrome, Playwright en Puppeteer glippen langs alle drie omdat ze in een echte browser-engine draaien en JavaScript-uitdagingen op menselijke snelheid oplossen.
- Vier browsersignalen: Vier browser-only signalen verraden ze: canvas-fingerprint-entropie, sessie-cadans, cursorgeometrie en font- en WebGL-fingerprint. cside verzamelt ze vanuit één tag, analyseert 250+ signalen per sessie, benoemt het automation-framework en geeft een uitspraak voordat de login of checkout wordt verzonden.
- Beleid per pagina: Blokkeer op login- en checkoutpagina's hard sessies benoemd als Playwright, Puppeteer of Selenium. Injecteer een challenge bij dubbelzinnige automation. Sta bekende crawlers die je wilt indexeren toe. Het gratis cside-plan van 1.000 API-calls per maand is genoeg om eerst het echte agent-volume te meten.
Weinig tijd? Bekijk cside's AI-agentdetectie. Dit dekt alles hieronder in één deployment.
Om AI-agents op je website te blokkeren moet je ze eerst detecteren, en die detectie moet binnen de browser gebeuren. Geautomatiseerde agents draaien nu in echte browser-engines, dus de controles op de netwerklaag waar de meeste teams op vertrouwen zien ze nooit. Deze gids behandelt de signalen die een agent verraden en hoe je een oordeel omzet in een blokkade, een uitdaging of een toelating.
AI-agents op een website blokkeren begint met begrijpen waarom de tools die de meeste teams al hebben het niet kunnen. WAF's blokkeren bekende kwaadaardige IP's en verzoekpatronen. CDN-botmanagers filteren niet-browserverkeer. CAPTCHA-uitdagingen blokkeren verzoeken die geen JavaScript kunnen uitvoeren. Tools zoals OpenAI Operator, Claude for Chrome, Playwright en Puppeteer passeren al deze controles, omdat ze in echte browser-engines draaien, JavaScript uitvoeren, CAPTCHA's oplossen en op menselijke snelheid werken. De signalen die ze onthullen bestaan alleen op de browserlaag.
Stap 1: Begrijp welke signalen AI-agents daadwerkelijk identificeren
Vier signaalcategorieën onderscheiden AI-agents betrouwbaar van menselijke gebruikers. Voor alle vier is een script nodig dat in de browser draait om ze te observeren.
Entropie van canvas-fingerprints. Elk echt apparaat rendert de browser-canvas anders op basis van zijn GPU-hardware, besturingssysteem en font-renderingengine. Echte apparaten produceren canvas-fingerprints met hoge entropie vanwege de variatie in hardwareconfiguraties tussen gebruikers. AI-agents die in minimale of gevirtualiseerde omgevingen draaien produceren lagere entropie omdat de renderomgeving minder gevarieerd is. Dat verschil is meetbaar in de canvas-output.
Sessieritme. Menselijke gebruikers typen, klikken en navigeren met natuurlijke variatie in timing. Dit zijn kleine, organische onregelmatigheden die voortkomen uit aandacht, vertrouwdheid en motoriek. AI-agents voeren browsergebeurtenissen uit met mechanisch precieze intervallen. Een formulierveld dat met een vast interval tussen elk teken wordt ingevuld, consistent herhaald over meerdere interacties, is geen menselijk patroon.
Cursorgeometrie. Menselijke muisbanen zijn gebogen, ze versnellen en vertragen, en ze bevatten microcorrecties voordat ze op een doel landen. AI-agents produceren geometrisch rechte cursorbanen, of helemaal geen cursorbeweging tussen interacties. Echte gebruikers produceren vrijwel nooit rechte cursorbanen.
Font- en WebGL-fingerprint. Apparaten van echte gebruikers hebben een volledige systeemfontset geïnstalleerd en een GPU die consistente WebGL-output produceert. AI-agents die in minimale omgevingen draaien hebben een beperkte fontset en gevirtualiseerde of afwezige GPU-hardware. De combinatie van ontbrekende fonts en een afwijkende WebGL-signatuur is een sterke onderscheider.
Stap 2: Implementeer een detectiescript op de browserlaag
Het detectiescript moet met de pagina laden en signalen gaan verzamelen voordat de gebruiker met enig element interacteert. Deze timing is belangrijk: de signalen zijn de hele sessie lang observeerbaar, en vroege datapunten leggen de gedragsbaseline vast waartegen latere gebeurtenissen worden vergeleken.
Een browserlaag-script van cside AI-agentdetectie laadt met de pagina, verzamelt alle vier signaalcategorieën passief en is klaar om een API-oordeel terug te geven tegen de tijd dat de gebruiker bij een loginformulier, afrekenpagina of een andere stroom komt die je wilt beschermen.
Het script integreert als één tag in de head van de pagina. Er zijn geen wijzigingen aan de server-side SDK nodig.
Stap 3: Roep de API aan en lees het oordeel
Zodra het script signalen heeft verzameld, geeft één API-aanroep een realtime oordeel voor de sessie terug. cside analyseert 250+ signalen per sessie en combineert ze tot een risicoscore, markeert AI-agent- en geautomatiseerde sessies en identificeert waar mogelijk benoemde automatisering zoals OpenAI Operator, Claude for Chrome, Playwright, Puppeteer en Selenium. Het antwoord geeft ook aan of de verbinding via een VPN of proxy loopt, en geeft een stabiele apparaatidentifier voor de sessie terug.
Het oordeel is beschikbaar voordat het formulier wordt verzonden of de kritieke actie plaatsvindt, zodat je applicatie kan beslissen wat te doen terwijl de sessie nog open is.
Stap 4: Bepaal je reactie per sessietype
Elke gedetecteerde AI-agentsessie blokkeren is niet altijd de juiste reactie. De juiste actie hangt af van wie je denkt dat de agent is.
Blokkeren: Sessies waarin het oordeel een bekende misbruiktool (Playwright, Puppeteer, Selenium) benoemt op een login- of afrekenstroom. Deze tools hebben geen legitiem gebruiksdoel richting gebruikers op die pagina's.
Uitdagen: Sessies die als geautomatiseerd zijn gemarkeerd waar het agenttype dubbelzinnig is. Voeg een uitdaging toe om menselijke aanwezigheid te bevestigen voordat je de interactie laat doorgaan.
Toelaten: Sessies van crawlers die je herkent en toestaat, zoals je eigen monitoringtools, zoekmachinecrawlers die actief zijn op pagina's die ze moeten indexeren, of legitieme API-integraties die je hebt geautoriseerd. Deze produceren automatiseringssignalen maar rechtvaardigen geen actie.
Loggen en monitoren: Sessies op niet-kritieke pagina's waar blokkeren niet gerechtvaardigd is maar zichtbaarheid nuttig is. Met de apparaatidentifier en het agenttype kun je een beeld opbouwen van geautomatiseerde activiteit op je hele site zonder verstorende maatregelen te nemen.
Stap 5: Pas reactieacties toe in je applicatie
Zodra het oordeel binnenkomt, dwingt je applicatie de reactie af. Typische implementaties:
Voor loginstromen: controleer het agentoordeel voordat je het authenticatieverzoek verwerkt. Als de sessie als bekende misbruiktool is gemarkeerd, geef dan een 403 terug voordat je de inloggegevens valideert. Er vindt geen wachtwoordvalidatie plaats, wat de databasebelasting door credential stuffing vermindert en de sessie blokkeert.
Voor afrekenstromen: controleer het agentoordeel en de risicoscore van de sessie voordat je het betaalformulier toont. Geautomatiseerde sessies met een hoog risico zouden de fase met betaalvelden niet mogen bereiken.
Voor registratiestromen: controleer de apparaatidentifier tegen bekende gekoppelde accounts voordat je de accountaanmaak voltooit. Dit pakt multi-accounting aan, evenals AI-agentgestuurde accountaanmaak en nep-aanmeldingen.
Waar blokkeren in je stack past
Detectie op de browserlaag vervangt je WAF of CDN-botmanager niet. Het staat ernaast en dekt het gat dat zij niet kunnen bereiken: geautomatiseerd verkeer dat binnen een echte browsersessie aankomt. Houd de controles op de netwerklaag voor het volumetrische en niet-browserverkeer dat ze goed aankunnen, en voeg oordelen op de browserlaag toe voor de agents die door die controles heen komen. De twee lagen samen geven je een beslissing per sessie op login-, afreken- en registratiestromen zonder de crawlers die je wilt behouden te veel te blokkeren.
Verder lezen
- AI-agentdetectie: hoe cside agent- en geautomatiseerde sessies scoort vanuit één scripttag
- Account takeover: geautomatiseerd inlogmisbruik en credential stuffing stoppen
- Multi-accounting: apparaten koppelen om agentgestuurde accountaanmaak te betrappen








