Nyt meni sormi suuhun..
Mulla on vieraskirja joka on viimeaikoina ruvennut täyttymään spämmibotin viesteistä. (Tyyliin: great site, plää plää, plääh.. )
Kaikki alkoi viagra mainoksilla, mutta ne sain kuriin estämällä http, www jne tagien käytön viestikentässä. (Näille kun on lomakkeessa omat kentät) Osa kentistä on lisäksi pakollisia osa ei.
Joku viisas(?) neuvoi mua etsimään google:lla juttua capatchasta, josta löysinkin pari demoa. Tosin niistäkään ei ollut apua. :/
(Esim. http://www.mperfect.net/aiCaptcha/ ks. demo kuva, ei auttanut.)
Nyt olisikin hyvät neuvot tarpeet. Esim. joku hyväksi todettu demo, tai muuten vain vinkkejä. Onkohan joku testannut tätä Juicen esittämää
kikkaa (https://www.ohjelmointiputka.net/keskustelu/
Juicen tuossa keskustelussa esittämä kikka on toiminut ainakin minulla hyvin.
aiheesta myös http://mureakuha.com/keskustelut/2?12744
Helpointahan on laittaa muuttumaton numerosarja. Siis teet ensin esim. numerosarjan, joka on koneelle vaikea lukea (kuvana) ja laitat sen ylimääräisen kentän, johon ihminen sitten laittaa tuon tarkistuskoodin ja sitten tarkistat koodissa, että kenttään on laitettu oikea numerosarja (tai miksei vaikka kirjaimiakin) Ja sehän kannattaa tehdä hyödyntäen md5, niin ettei tätä numerosrjaa voida onkia suoraan koodista.
porzi kirjoitti:
Helpointahan on laittaa muuttumaton numerosarja.
Öh... Eikös CAPTCHAn idea ole juuri se, että se numerosarja muuttuu joka kerralla, jottei sitä kerran voi käydä katsomassa ja sitten spammata tunnetulla CAPTCHAlla viittämiljoonaa viestiä?
porzi kirjoitti:
Ja sehän kannattaa tehdä hyödyntäen md5, niin ettei tätä numerosrjaa voida onkia suoraan koodista.
Ajattelit sitten palvelinpäässä bruteforcettaa asiakkaan lähettämiä MD5-hasheja, vai? :P
Oikea toteutustapa on aloittaa asiakkaalle sessio, jolle arvotaan satunnainen CAPTCHA-teksti. Tästä tekstistä generoidaan lennossa tuollainen kuva, ja näytetään se asiakkaalle. Asiakkaan vastausta verrataan sitten sessiosta löytyvään tekstiin, ja niiden täsmätessä viesti tallennetaan.
Toki testiksi voi kehittää jotain hauskempaakin, törmäsin taannoin KittenAuthiin, joka on varsin söpö :)
Blaze kirjoitti:
Oikea toteutustapa on aloittaa asiakkaalle sessio, jolle arvotaan satunnainen CAPTCHA-teksti. Tästä tekstistä generoidaan lennossa tuollainen kuva, ja näytetään se asiakkaalle. Asiakkaan vastausta verrataan sitten sessiosta löytyvään tekstiin, ja niiden täsmätessä viesti tallennetaan.
Toki testiksi voi kehittää jotain hauskempaakin, törmäsin taannoin KittenAuthiin, joka on varsin söpö :)
Toi Kitteni oli hauska. Nyt mulla on ollut oma hieman muokattu versio tästä: http://www.puremango.co.uk/
ja yllätys yllätys.. spämmibotit pääsee läpi. (Tosin ei niin paljoa kuin ennen :) ) Ilmeisesti tuota kuvaa pitäisi vielä jotenkin kääntää ja vääntää.. Mun mielestä toi kuitenkin on ihan ok esimerkki captcha kuvan tuottamisesta.
Täytyy laittaa toi Juicen esim. lisäksi tänään. Huomenna/illalla laitan tänne raporttia miten kävi.
by the way..mitähän captcha Nokia käyttää omilla sivuillaan? (kohta mistä voi tilata operaattoreiden asetuksia) Taitaa olla N oma...
Helpointahan olisi varmaankin tehdä tekstikenttä ja siihen viestiksi jotain tyyliin "kirjoita tähän haukkuva lemmikkieläin (ei kissa)" ja sit tarkistaa koodissa että lukeeko siellä leijona vai koira. Tuo nyt ei välttämättä ole paras mahdollinen esimerkki, mut noitahan on helppo keksiä lisää. Ite oon käyttänyt tuota piilokenttää eikä ainakaan vielä oo tullu spämmiä, ei tosin tullut sitä ennenkään kovinkaan paljon.
Mulla oli vähän aikaa kuvana vaihtuva laskutoimitu; tyyliin 3+4=?, mutta senkin peijoonat läpäisivät. ;)
Blaze kirjoitti:
Ajattelit sitten palvelinpäässä bruteforcettaa asiakkaan lähettämiä MD5-hasheja, vai? :P
Eieieiei! Ymmärsit täysin väärin. Siis sanotaan vaikkapa, että kuvaan piilotettu kirjainyhdistelmä on abc, ja sen md5 on vaikkapa H5jk9 (mitä se tuskin on). Sitten koodissa tarkistetaan, onko kenttään kirjoitetun tekstin md5 H5jk9.
Ja tästä on mikä hyöty? Palvelin vain joutuu laskemaan yhen ylimääräsen MD5:n.
Tehtävä suomeksi - "Matilla on kolme omenaa. Hän laittaa niistä yhen pöydälle. Monta omenaa on pöydällä?" tms.~ :E.
Blaze kirjoitti:
Ja tästä on mikä hyöty? Palvelin vain joutuu laskemaan yhen ylimääräsen MD5:n.
Tämä estää sen, ettei sitä oikeaa vastausta voida onkia suoraan koodista.
Niin mistä koodista?
Koodiin ei tarvitse laittaa mitään näkyvää arvotusta Captchasta, jos se arvotaan ja tallennetaan istuntoon.
Tällöin sen voi onkia erillisessä captchan-luontitiedostossa suoraan istunnosta.
Jolloin html-lähdekoodissa näkyy vain:
<img src="captcha.php" />
Lupasin tuossa kertoa miten neuvot ovat pureneet vieraskirjassani. Spämmit vähenivät n. 30%, mutta edelleen shittiä pukkaa. :/
Koitappas tälläistä checkbox viritelmää:
[ ] [ ] [ ] [ ] [ ][/t] (ruksi eka, kolmas ja neljäs)
Spämmibotit tuskin osaavat suomea, joten tuolla tavalla pääsisi helpoiten...
Tietenkin laitat ne vaihtoehdot vaihtumaan jollain koodilla ettei tule aina samoja.
Hmm... voisinpa koittaa tehä tuosta toimivan.
T.M. kirjoitti:
Koitappas tälläistä checkbox viritelmää: ...
Sivusto on kyllä lontooksi.. ;) Anyway, tuotahan voisi kokeilla.
Joo, ja laita vielä "älä ruksi tätä" juttuja sinne, niin botit kyllä menevät aivan sekaisin :)
Tai yksi vaihtoehto on sellainen, että mikäli viestistä löytyy kirjainyhdistelmä www tai http://, silloin kysytään lisäkysymyksiä (normaalikäyttäjien ei tarvitse huolehtia, jos eivät laita linkkejä). Siis yleensähän ne mainostavat jotain sivua. Siis jos tuo löytyy viestin sisältä, kysytään lisäkysymys esim. jatka mustan kissan paksut ?
Itse tekisin niin että:
kun sivu ladataan arvotaan 6 merkkiä (A-Ö, a-ö ja 1-0)
generoidaan phpllä kuva ja kirjoitetaan ne siihen (vaikka vähän oudommalla fontilla) ja nämä 6 merkkiä olisivat php:n omassa muuttujassa ja ne tarikistettaisiin kun lähetä nappulaa painetaan.
Jorgga, tuostahan capthcassa on juuri kyse. Ja tuo tsurigan antama linkki oli aika mainio, siitä näkee kuinka vähän tuo "vähän oudompi fontti" oikeasti auttaa.
T.M. kirjoitti:
Joo, ja laita vielä "älä ruksi tätä" juttuja sinne, niin botit kyllä menevät aivan sekaisin :)
TheDailyWTF
http://img.thedailywtf.com/images/200608/wtfuId.
Mulla on toiminu peruskonstina kaksi checkboxia:
Älä valitse tätä [X]
Valitse tämä [ ]
http://www.dianband.net/gb.php <- esimerkiksi tuolla.
dene4 kirjoitti:
Mulla on toiminu peruskonstina kaksi checkboxia:
Oletko varma ettei "toimiminen" johdu vain liian pienestä käyttäjäkunnasta (ts. spämmibotit ei ole vielä sivua löytänyt)?
Lebe80 kirjoitti:
Oletko varma ettei "toimiminen" johdu vain liian pienestä käyttäjäkunnasta (ts. spämmibotit ei ole vielä sivua löytänyt)?
On löytäneet. Täyttyi vieraskirja parissa päivässä mainoksista viimekeväänä. Tuon muutoksen jälkeen ei ole tullut yhtään spämmiä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.