Hoe een controle van formexposed werkt: passief, transparant, respectvol
Wat er gebeurt tussen het invoeren van een domein en het lezen van het rapport – wat de scanner laadt, wat hij controleert, wat hij nooit doet en wat er verandert zodra een domein is geverifieerd.
Wanneer u een domein invoert in de gratis controle op formexposed.com, bezoekt een scanner die website en komt terug met een rapport. Dit artikel loopt door wat er daartussen gebeurt: wat de scanner laadt, waar hij naar kijkt, wat hij bewust niet doet, en waarom sommige details pas verschijnen als u hebt aangetoond dat het domein van u is.
Van domein tot rapport
De scanner laadt de openbare pagina’s van de site zoals een browser dat zou doen, inclusief de scripts die erop draaien. Dat is belangrijk, omdat veel formulieren, CAPTCHA-widgets, cookiebanners en trackingtags pas na het laden van de pagina door JavaScript worden toegevoegd; een blik op alleen de ruwe HTML zou ze missen. Op die pagina’s zoekt de scanner naar formulieren en deelt hij elk formulier in naar doel – contactformulier, aanmelding voor een nieuwsbrief, login enzovoort. De indeling plaatst de bevindingen in context: een nieuwsbriefvak heeft andere behoeften dan een contactformulier dat berichten rechtstreeks in iemands inbox aflevert.
Waar de scanner naar kijkt
- Bescherming tegen spam en misbruik: of er een CAPTCHA is (reCAPTCHA, hCaptcha, Turnstile, Friendly Captcha, een eigen reken- of beeldcaptcha, of een antispamdienst aan de serverkant) en of die effectief is ingesteld – een openbare test-sitesleutel of een widget zonder script beschermt niets. Daarnaast honeypotvelden, CSRF-tokens en tijdvallen.
- De omgeving: bekende kwetsbare combinaties van CMS en plug-ins, of het formulier naar een dienst van derden post, en of er een WAF of CDN vóór de site staat.
- AVG-signalen: een link naar de privacyverklaring bij het formulier, of het weigeren van de cookiebanner tracking echt stopt, advertentie- of trackingpixels die op formulierpagina’s afgaan, session-replaytools die kunnen opnemen wat mensen typen, en een e-mailadres van de ontvanger dat zichtbaar is in de broncode van de pagina.
- Toegankelijkheidssignalen: axe-core-controles op het formulier (labels, foutmeldingen, contrast en meer), of de CAPTCHA toegankelijk is, honeypots die schermlezers voorlezen, en hoe het formulier op een telefoon werkt – tikdoelen, overlays die de verzendknop bedekken, horizontaal scrollen.
Passief, transparant, respectvol
De anonieme controle is passief. De scanner leest pagina’s; hij vult geen velden in, verzendt geen enkel formulier en probeert nergens in te loggen. Niemand ontvangt een testbericht, en er komt niets in de inbox of database van de site terecht. Hij gedraagt zich ook als een welgemanierde bezoeker: hij leest robots.txt en respecteert het, en hij maakt zich bekend als FormExposedBot in plaats van zich voor te doen als een gewone browser. Wie die naam in zijn serverlogs tegenkomt, kan hem opzoeken op formexposed.com/bot, waar wordt uitgelegd wat de bot doet.
Beschermd, gedeeltelijk beschermd, blootgesteld
- Beschermd: de gevonden formulieren hebben bescherming die effectief lijkt, zonder opvallende hiaten die van buitenaf zichtbaar zijn.
- Gedeeltelijk beschermd: er is bescherming, maar met hiaten – bijvoorbeeld een CAPTCHA die met een testsleutel draait, of één formulier dat beschermd is en een ander niet.
- Blootgesteld: formulieren missen detecteerbare bescherming of vertonen zwakke plekken die misbruik makkelijk maken.
Het niveau vat samen wat van buitenaf te zien is; het is in geen van beide richtingen een garantie. Rapporten van anonieme controles zijn met opzet kortlevend en worden niet door zoekmachines geïndexeerd. En omdat iedereen elk domein kan invoeren, laten ze details over kwetsbaarheden weg: het rapport laat zien dat iets aandacht nodig heeft, maar niet de exacte zwakke plek die een aanvaller zou kunnen gebruiken. Die details worden alleen aan geverifieerde eigenaren van het domein getoond.
Wat er verandert met een geverifieerd domein
- Iedereen, voor elk domein, geen account
- Eenmalig, wanneer iemand hem start
- Alleen passief – er wordt niets verzonden
- Geen details over kwetsbaarheden
- Bezorging wordt niet gecontroleerd
- Geen meldingen
- Kortlevend rapport, niet geïndexeerd
- U, voor domeinen die u hebt geverifieerd
- Terugkerend: maandelijks, wekelijks of dagelijks, afhankelijk van het abonnement
- Passief, plus optionele actieve testinzendingen (na aanmelding)
- Details over kwetsbaarheden zichtbaar voor u
- Bezorgcontrole: komen testinzendingen aan?
- Meldingen alleen als er iets verandert
- Maandelijks bewijslogboek
Twee daarvan verdienen een nadere blik. Actieve controles staan uit tenzij u ze inschakelt, en ze zijn alleen beschikbaar voor een domein dat u hebt geverifieerd. De scanner verstuurt dan een paar duidelijk gemarkeerde testinzendingen, zodat u en uw team ze kunnen herkennen. Samen met de bezorgcontrole beantwoordt dit een vraag die geen passieve scan kan beantwoorden: komt een bericht dat via het formulier is verzonden echt aan? Monitoring is daarentegen gebouwd om stil te blijven. U krijgt een melding – per e-mail, webhook, Slack, Discord, Telegram of Google Chat – alleen als er iets verandert, bijvoorbeeld wanneer een CAPTCHA na een update verdwijnt of er een nieuwe trackingpixel op de contactpagina opduikt.
Wilt u zien wat de scanner ziet, begin dan met de gratis controle op formexposed.com: voer uw domein in en lees het rapport. Is de site van u en wilt u de details, regelmatige monitoring en de bezorgcontrole, verifieer het domein dan in een account.