adcaptcha

Ar trebui să știți cu toții ce reprezintă “captcha” dar cu toate astea hai să facem un scurt istoric. Termenul de “captcha” vine de la “Completely Automated Public Turing test to tell Computers and Humans Apart” și reprezintă o imagine cu o serie de caractere distorsionate pe care un utilizator (uman) trebuie să le introducă înainte de a confirma o acțiune (de regulă login sau postarea unui text). Scopul principal este de a opri uneltele automate (scripturi, boti) să folosească anumite resurse.

Există câteva metode de-a trece un astfel de test, metode care sunt luate în calcul atunci când este dezvoltată o nouă versiune de captcha. În primul rând imaginile trebuie să fie generate automat și să  nu existe un grad ridicat de repetabilitate. În caz contrar, nu este decât o problemă de timp până când un atacator poate găsi perechile (cuvant / imagine) potrivite pentru a trece de test. O altă metodă este folosirea OCR (optical character recognition) pentru “citirea” textului. Asta este problema cea mai mare a implementărilor captcha pentru că textul trebuie să rămână îndeajuns de vizibil pentru a putea fi citit de un om dar trebuie să fie și suficient distorsionat încât să nu poată fi recunoscut de un program specializat. Și cum tehnica avansează destul de rapid acest lucru este din ce în ce mai dificil de realizat.

In February 2008 it was reported that spammers had achieved a success rate of 30% to 35%, using a bot, in responding to CAPTCHAs for Microsoft’s Live Mail service and a success rate of 20% against Google’s Gmail CAPTCHA. A Newcastle University research team has defeated the segmentation part of Microsoft’s CAPTCHA with a 90% success rate, and claim that this could lead to a complete crack with a greater than 60% rate.

O a treia metodă se bazează chiar pe factorul uman. Imaginile testelor captcha sunt folosite pe site-uri cu trafic mare apartinand atacatorului/atacatorilor și rezolvate în acest mod.

Și ajungem la subiectul principal al postului meu. Am urmărit de ceva vreme “buzz”-ul din jurul proiectului autohton AdCaptcha AdCaptcher“. Apărut inițial pe voxpublica unde a și stârnit niște reacții (oarecum copilărești) legate de “jena” de-a introduce anumite texte, proiectul pare a fi lăudat de toată lumea. Eu însă am câteva rezerve legate de funcționalitate și am încercat să aflu câteva detalii mai tehnice legate de proiect.

Cu excepția unei prezentări (100% marketing) și-a folosirii pe voxpublica n-am găsit însă nimic. Însă m-am jucat nițel cu implementarea de pe voxpublica și-am observat următoarea chestiune. Imaginea care formează testul este compusă din 2 jumătăți (imaginea este tăiată pe orizontală) și compusă ulterior cu ajutorul unui script. Deși la prima vedere URL-ul imaginii este generat unic la fiecare apariție a imaginii pe site de fapt acest lucru nu este adevărat. Luăm ca exemplu un link către jumătate de imagine pentru “money.ro”. Link-ul generat este :

http://www.adcaptcher.com/1266545375goIfQK0190110.png

La următoarea întâlnire a imaginii respective vom găsi ceva de genul :

http://www.adcaptcher.com/XXXXXXXgoIfQK0190110.png

Unde “XXXXXX” este un număr aleator cu cel puțin 1 cifră. Deci pot spune cu certitudine că toate link-urile către “xxxxxxgoIfQK0190110.png” duc către testul cu “money.ro”. Problem solved și nici n-am nevoie de OCR. Jumătatea de jos a imaginii complete este similar generată. Ce nu e tocmai ok ? Păi ia să recapitulăm. Avem niște imagini care pot fi ușor recunoscute de un soft OCR (money.ro cu alb pe fond verde e floare la ureche de exemplu). Avem un număr limitat de imagini (cred că n-am numărat mai mult de 10-15 “reclame” diferite) care generază testul captcha și care se bazează doar pe faptul că încă n-au apărut scripturile care să “citească” link-urile care compun imaginea (nu c-ar fi extrem de greu, eu am observat treaba cu link-urile în câteva minute de joacă și la cât de puține imagini sunt este suficient să “verifici” cu un script care-i jumătate de imagine ca să rezolvi testul). Și avem un mare buzz făcut în jurul proiectului. Și zău că nu-mi vine să cred că-s singurul care și-a pus întrebări vis-a-vis de funcționalitatea unui asemenea sistem.

Dacă tot vrem să îmbinăm utilul cu banii ce-ar fi să facem și noi ceva în stilul reCaptcha și să digitalizăm câteva hârțoage de prin bibliotecile naționale. Și putem să folosim în loc de cuvinte de control texte cu reclame. Sau doar fundal cu reclame. Sau mai bine lăsam locul reclamelor în alte zone și încercăm să fim nițel mai serioși cu chestiile legate de securitate că nu sună bine viitorul, zău.

13 Comments adcaptcha

  1. Razvan Tirboaca

    Salut,

    Multumesc pentru feedback!

    Securitatea este un proces care necesita imbunatatiri continue si development permanent. Asta este unul dintre motivele pentru care inca suntem in private beta.

    Stim unde sunt punctele vulnerabile si incercam sa le rezolvam rapid, cat si pe cele pe care le aflam in urma feedbackului utilizatorilor.

    Suntem deschisi sugestiilor venite din partea celor care stiu ce vorbesc si o fac intr-un mod constructiv, asa ca daca ai timp si chef, apreciez daca mi-ai trimite un mail cu intrebari sau sugestii. Responsabilitatea securitatii cat si creerea unei alte forme de monetizare pentru detinatorii de site-uri e o provocare mare :)

    Reply
  2. rpetre

    De un recaptcha cu carti romanesti ar fi mai multa lume interesata, cred ca principala problema ar fi obtinerea de scanuri. Ar fi ceva daca Biblioteca Nationala ar sutine chestia asta.

    Reply
  3. Razvan Tirboaca

    @rpetre

    1. AdCaptcher este un proiect adresat pietei internationale

    2. Business-ul din spatele recaptcha este urmatorul: Google a cumparat recaptcha in oct 2009 pt 600 mil $. Noi (utilizatorii) credeam ca digitalizam carti pentru “binele omenirii” nestiind ca, de fapt, noi digitalizam libraria Google Books care ne va fi vanduta peste 2-3 ani pe modelul Amazon – Kindle, iBook – iPad, etc. Business-ul de carti online va fi imens, de cateva ori mai mare decat cel de muzica online.

    3. Va veni randul si cartilor romanesti, carti ce-ti vor fi vandute online tot de unul dintre cei 3 giganti.

    Te las pe tine sa tragi concluziile :)

    Reply
  4. Razvan Tirboaca

    Fiecare e liber sa aleaga ce-si implementeaza pe site. Insa daca ma intrebi pe mine, nu vad care e problema ca un blogger sa faca bani din blogul lui. Numai in Romania intalnim problema asta: daca e ok sau nu ca un om, care acorda o perioada de timp zilnic pentru a scrie ceva, sa-si monetizeze site-ul… ca tot vorbeai de paranoicii de pe voxpublica, uite un exemplu de cum gandesc altii p-afara http://www.dragosroua.com/brand-your-captcha-introducing-adcaptcher/#comments

    AdCaptcher e un tool care te ajuta sa faci bani (direct sau indirect, depinde ce promovezi), recaptcha e un tool care ii ajuta pe altii sa faca bani mintindu-te pe fata. Prefer prima varianta, nu numai in cazul captcha, ci in general!

    Reply
  5. Meekuu

    Nu am nimic împotriva monetizării blogurilor. Dimpotrivă. Și chiar îmi plac ideile care încearcă să se rupă de sistemul “trântim 2-3 bannere și gata”.

    La fel cum nu vad nimic anormal ca google să câștige bani de pe urma recaptcha.

    Reply
  6. Meekuu

    Eh, de google putem doar să bănuim. Și sunt sigur că atunci când va veni momentul și vor cere bani pentru cărțile digitale se vor găsi destui care să le umple frigiderele cu carne.

    Reply
  7. Programare Sociala

    @Meekuu: e destul de clar că ai înțeles și descris perfect unde bate adcaptcha și ai înțeles perfect cât de slab este în fața atacurilor.

    Și totuși în comentarii de ce te faci că nu înțelegi… ?!?!?!?!

    @Razvan Tirboaca: primul comentariu pare pur și simplu un comunicat PR de baltă. Și tu ai înțeles perfect ce a vrut Meekuu să spună, adică adcaptcha este un tool care te ajută să îți monetizezi blogul dar care este o varză totală atunci când trebuie să facă ce ar trebui de fapt să facă. Adică să te apere de boți.

    Reply
  8. Razvan Tirboaca

    @programare sociala

    Eu cred ca toti am inteles ce vrea sa spuna fiecare, insa ce nu ai inteles tu din ce am spus eu, development-ul e un proces continuu adica lucram permanent la imbunatatire, asta fiind cea mai mica (accesibila) problema de rezolvat!

    AdCaptcher e un produs in private beta, nici macar beta, deci nu inteleg de ce vorbesti de parca e de 5 ani pe piata. Cat despre faptul ca e o varza totala, eu zic sa-l incerci, ba chiar sa-l spargi si daca reusesti, iti fac o oferta sa te alaturi echipei, ce zici? Poate asa nu vei mai trage concluzii pripite.

    Meekuu a intuit niste portite de intrare si le-a descris OK, constructiv, drept urmare am continuat discutia.

    Toti suntem capabili sa ne dam cu parerea de pe margine ;)

    Reply
  9. rpetre

    Razvan: chiar daca exista riscul ca cineva sa ia datele alea din recaptcha si sa le vanda, imho e tot e fenomenal de bine: ca aplicatie de securitate e foarte ok, iar contentul respectiv ajunge digitizat cumva de calitate, spre deosebire de a se umple de praf prin biblioteci. In ceea ce priveste adcaptcha, in afara de aspectul marketoid “mama ce idee cool”, mi se pare epic fail dpdv tehnic (in principiu a descris Meekuu in articol de ce) cat si jenant dpdv. etic.

    Welcome to my adblock regex list.

    PS: da, nu ma deranjeaza sa am carti digitale romanesti de calitate si chiar (gasp) sa platesc pentru asta.

    Reply
  10. Razvan Tirboaca

    @rpetre citeste ce am scris mai sus, nu ma repet pentru fiecare programator in parte care nu intelege sensul lui “epic fail” si care trage concluzii dupa ureche

    @Meekuu Google poate sa-si ia carne cat cuprinde, pentru “average joe” care va plati nu conteaza. E similar cu strategia Buzz, au lansat o varianta constienti ca 5% le vor da carne, au dezvoltat o retea de milioane de useri in 2 zile dupa care au schimbat. Cam asa functioneaza :)

    Eu ma retrag din discutii, mersi inca o data pt feedback, saptamna asta vom face un update de backend. Da-mi un mail daca te intereseaza un cont, fie doar pentru teste.

    Numai bine @all

    Reply
  11. Meekuu

    Oameni buni, chill :)

    Eu m-am ferit să folosesc termeni precum “epic fail” in articol din motivul explicat chiar de Razvan. E inca in beta privat si ca in orice proiect aflat in stadiul asta are nevoie de feedback si imbunatatiri. Pe de alta parte am decis sa scriu articolul tocmai pentru ca am observat cum toata lumea laudă ideea fără să-și pună nici cea mai mică întrebare legată de funcționalitate. Până la urmă “captcha” este scopul primar (sper că așa este) iar reclamele sunt doar o metodă de-a câștiga un ban cinstit folosind metoda respectivă de captcha. Evident, dacă nu funcționează captcha cum trebuie, proiectul se reduce la o simplă reclamă pusa ca moft. Și dacă iese din stadiul de beta fără a repara problemele respective și va începe să creeze interes pe plan international va avea parte de niste review-uri mult mai acide de la persoane mult mai în temă decât mine.
    Așadar critica mea s-a vrut a fi în primul rând constructivă și în al doilea rând un semnal de alarmă către cei extrem de entuziasmați de partea cea mai puțin interesantă într-o implementare de captcha.

    Multumesc si pentru oferta de cont dar nu folosesc pe blog captcha. In plus il pot testa cum am facut-o si pentru articol, direct pe voxpublica (sau pe alte site-uri care folosesc).

    P.S. Acum mă uitam și la comentariile de pe blogul lui Dragos Roua. Exact de asta mă sperie viitorul în domeniul ăsta. Se tinde spre o direcție în care utilizatorul final nu știe sau nu vrea să știe toate chichițele uneltei din fața lui. Este o tendință absolut normală și logică pentru cei mai mulți dintre noi însă cu niște consecințe posibil dezastruoase atunci când ignoranța utilizatorului este combinată cu o implementare nefericită. Și probabil că de aia ăștia ca mine o să mai aibe o pâine bună de mâncat din cauza asta multă vreme de-acu înainte.

    Reply

Leave a Reply to Razvan Tirboaca Cancel reply

Your email address will not be published. Required fields are marked *