Weet iemand van jullie wat een spam-bot eigenlijk "ziet"?
Een voorbeeld ... ik zet in een formulier een selectbox met als label "niet aanvinken" en vervolgens haal ik met javascript die selectbox en label weer weg ... ziet die spam-bot die selectbox en label dan wel of niet?
Oké, ik snap wat je bedoelt. Alleen als je dus een spambot hebt die css "begrijpt" dan ziet die dus wel nog steeds dat je telkens dat veld op display:hidden zet, en zal die er dus niks mee doen.
Wat ik me toevallig laatst afvroeg; kun je je bezoekers niet gewoon een vraag opleggen passend bij het onderwerp van je website? Stel je hebt een website over Disney en in plaats van dat je een CAPTCHA gebruikt, stel je een vraag als "Welk dier is Donald Duck?". Natuurlijk is dit een redelijk makkelijk vraag, maar zou een spambot hier ook correct antwoord op kunnen geven?
Vandaar dat ik in den tijd ook mijn theorie was ik maak ze @random.
Hij kan wel css begrijpen, maar als ik er meerderen heb dan word het toch wel leuk voor zo'n botje om het te proberen. Ik zeg dan ook het is niet water dicht. Begrijp me goed ik heb het ooit in het verleden (toen ik nog haar had) zo gedaan.
Hoe de status is van javascript en botjes in het heden is weet ik echt niet.
Nogmaals, ik beheer een website voor een club bejaarden die gewoon een mooie website willen zonder geconfronteerd te worden met oude_vandagen_kwalen_pillekes, en daarom heb ik er voor gekozen om het wat rigoreuzer aan te pakken. :)
@Lord: Ik ben nu zelf ook zoiets (als extraatje) aan het inbouwen. Gewoon wat algemene simpele vragen die je als Nederlander makkelijk kunt beantwoorden. Ik denk dat een bot hier geen antwoord op heeft, omdat die vragen daarvoor te specifiek zijn. Vaak zijn bots (denk ik) ook Engels geörienteerd. Dus ja, ik denk dat dat een goede oplossing is. Het enige nadeel is dat je de bezoeker moet lastigvallen met een vraag ... maar ja, als je die heel simpel houdt dan werkt het denk ik wel.
[size=xsmall]Toevoeging op 15/09/2016 22:08:36:[/size]
>> Nogmaals, ik beheer een website voor een club bejaarden die gewoon een mooie website willen zonder geconfronteerd te worden met oude_vandagen_kwalen_pillekes
Of viagra :-)))
[size=xsmall]Toevoeging op 15/09/2016 22:09:50:[/size]
Overigens ... wat jij doet is idd rigoreus ... het nadeel vind ik dat je dan aan het klooien blijft. Je loopt als het ware achter de feiten aan. Ik snap je wel ... maar het is een beetje 'lappen' zeg maar.
Vandaar is een lijst met 200.000 records aan spam ip adressen wel handig ;)
Ik denk dat je inderdaad altijd wel aan het klooien blijft voor welke oplossing die je kiest.
Ik denk dat het maken van verborgen velden met willekeurige namen ook niet veel helpt.
Het is leuk, maar de bot herkent een verborgen veld en slaat deze over, wat voor naam deze ook heeft.
Ozzie, voor jou zou denk ik het mooiste zijn om een vraag of rekensom toe te voegen.
Zorg dan wel voor meerdere vragen of rekensommen, want als ik deze oplos en in de spam-bot-database zet werkt het niet meer. In dit geval is een willekeurige veld-naam misschien wel een toevoeging aangezien het dan lastiger wordt welk veld moet worden ingevuld, maar om te voorkomen dat de spam-bot dan de boel omdraait en denkt 'alle velden overslaan en wat overblijft is de vraag/rekensom', zou je alle veld-namen willekeurig moeten maken (niet naam49849, want dat is simpel van elkaar te scheiden, maar volledig willekeurig), maar dan zou de spam-bot altijd nog naar de volgorde van de velden kunnen kijken (er zou iets moeten zijn waardoor jij ook nog weet waarvoor het veld bedoelt is dus dat kan de spam-bot ook misbruiken).
Uiteindelijk blijft het heel lastig, want ze zijn echt niet meer zo dom als 5 jaar geleden.
Probeer het eens met een lijstje rekensommen en kijk dan eens of het aantal toevoegingen door bots afneemt. Leuk is nog om dan te loggen wanneer een formulier goed en fout gaat.
Ben benieuwd wat je er van maakt :-)
Is het misschien mogelijk om bij het betreden van bijvoorbeeld een registratie pagina een AJAX request te doen naar een pagina die een key teruggeeft die vervolgens weer met de registratie wordt meegezonden in een onzichtbaar veld? Als de key dan niet overeenkomt met de key die is meegestuurd gaat het om een spambot. Er vanuit gaande dat spambots niet weten dat er een AJAX request wordt gedaan.
De voorgaande oplossingen klinken leuk, en in 95% van de gevallen zal het ook prima werken, maar er zijn genoeg oplossingen denkbaar met headless browsers die wat je ook probeert gewoon zullen doorsteken. Ik heb ze zelf ook wel gebouwd (niet met het doel van spammen, maar het opvragen van voorraadinformatie e.d. van leveranciers die geen feed wilden leveren ivm concurrentie). Toegegeven, dit is niet heel erg zuinig in resources, dus zal de inzet beperkt zijn, maar het geeft wel aan dat je hoe dan ook handwerk zult blijven houden. Een handigere oplossing zou dan een honeypot zijn, kun je eenvoudig zelf maken en er zijn ook wel services voor.