Yksinkertainen suoja spam-botteja vastaan
March 9th, 2006
Aikanaan blogeihini tuli törkeitä pornomainosspämmejä. Mietin erilaisia mekanismeja kuten Captcha:n käyttöä ja vastaavia, mutta kaikissa niissä oli yksi ongelma: se hankaloitti myös käyttäjien toimintaa (käyttäjän pitää lukea sotkuinen merkkijono kuvasta ja kirjoittaa se sopivaan paikkaan kommenttia lisätessään).
Yksinkertainen ratkaisu: tehdään kaavakkeeseen kenttä, jota ei saa täyttää. Tämä kenttä voidaan varmuuden vuoksi vielä piilottaa CSS:n avulla käyttäjiltä siten, että he eivät sitä näe. Tässä blogissa teen sen siirtämällä sitä selainreunojen ulkopuolelle riittävän paljon, jolloin ihminen ei sitä vahingossa voi täyttää. Robotit taas eivät tiedä (ainakaan kovin helposti) mikä kenttä ei näy lukijalle, joten ne työntävät jotain sontaa jokaiseen tekstikenttään. Näin botit menevät ansaan, ja spammit suodattuvat blogeista automaattisesti pois.
Menetelmä ei tietenkään ole yleispätevä siinä vaiheessa, kun spambottien tekijät tietävät konstista, mutta ehkä tuolloinkin se vaatisi paljon lisätyötä bottien koodaajilta – niiden pitää nimittäin kyetä päättelemään HTML:stä näkyykö kenttä lukijalle vai ei, onko se disabloitu jne. Muitakin kiertokeinoja on, mutta en nyt esittele niitä tässä. Security Through Obscurity riittää tässä minulle :)

Leave a Reply