adcaptcher ftw

Am tras o porție sănătoasă de râs dimineață după ce-am citit la piticu că cei de la adcaptcher au cam uitat să reînoiască domeniul și-au pus pe butuci site-urile care foloseau jucăria lor.

Mai acum ceva vreme luam la puricat adcaptcher și încercam să înțeleg ce-i atât de revoluționar la soluția lor. Între timp au reparat chestiile semnalate de mine atunci (încă aștept berea ) dar tot nu m-au lămurit cu partea revoluționară.

Azi am intrat pe site-ul lor (ca să văd dacă l-au plătit între timp :P) și m-au lovit peste ochi testimonialele unor utilizatori obișnuiți. O să dau vreo 2-3 citate că-s de mare efect :

“dear ‘captcha’ no i’m not a robot, i’m just a human that can’t read your convoluted cryptic semi-text”

“#Yahoo has the WORSE CAPTCHA EVER because dumb guys like me can’t even read the warped letters!!! #fail”

“zaidrasid Hey website, if I can’t read your Captcha then I’ll seriously consider leaving your site! I’ll do it man! – Zaid Rasid, Wired Magazine,…”

“I detest those captcha things, I can never read them!”

Sistemul de captcha este din păcate un compromis făcut între usability (hai să nu folosim uzabilitate) și securitate (deși e cam mult spus securitate). Spam-ul a ajuns peste tot, ne invadează mail-urile, conturile de twitter, facebook și alte rețele sociale, blogurile, forumurile și alte site-uri pe care le accesăm. Doar o mica parte din mesajele de tip spam sunt trimise de efectiv de un om în carne și oase care stă să apese el butonul de “send” la final. Marea majoritate sunt trimise de scripturi din ce în ce mai complexe care fac treaba asta mult mai rapid și eficient. Au tot apărut soluții de eliminare a spamului cu diverse abordări. Evident, soluția perfectă ar trebui să fie complet transparentă pentru utilizatorul final. Însă modul în care sunt construite protocoalele folosite în comunicarea pe internet nu prea permite treaba asta. Pentru că pot fi create scripturi complexe care să simuleze foarte bine acțiunile unei persoane reale. Și astfel a apărut necesitatea unei metode care să se bazeze pe capacitatea umană de-a interpreta. Fie o imagine fie niște sunete (până la miros și pipăit mai avem de așteptat). Primele soluții de captcha erau extrem de simplu de citit. Însă tehnologia a ținut pasul și programele s-au specializat și în recunoașterea optică a caracterelor (ocr). Librăriile ocr au devenit din ce în ce mai puternice iar cei care făceau spam le-au folosit din plin. Întrecerea asta a dus încet încet la modul în care arată captcha în ziua de azi.

Un site cu zeci de mii de accesări și care oferă posibilitatea de-a posta mesaje este în mod clar o țintă pentru spam. Și cei care administrează site-ul au de ales între a șterge de mână grămezi de mesaje de spam și de-a folosi una sau mai multe metode de reducere a spamului. Utilizatorii finali, oamenii obișnuiți care vin să comenteze pe un astfel de spam pot fi într-adevăr deranjați de o metodă de tip captcha care nu le permite postarea mesajului până când nu introduc textul afișat în poză. Însă ar fi mult mai deranjați dacă lista de comentarii ar fi plină de mesaje cu reclame la viagra, cialis și alte prostii. Eu personal nu-s oprit de un captcha atunci când vreau să las un comentariu undeva. Și nici mulți alții că de aia este socializarea on-line în floare. Da, poate fi deranjant uneori, da, pot exista cuvinte pe care să nu le înțelegi (dar de aia ai buton de reload la majoritatea soluțiilor de captcha) însă sistemul trebuie privit ca un rău necesar.

Și-acu revenind la adcaptcher, de ce e “revoluționar” un sistem care-ți afișează mult mai clar cuvintele ? Lăsăm partea cu monetizarea. Aia de la google, yahoo, recaptcha și alții sunt tâmpiți pentru că s-au apucat să complice mult prea rău cuvintele afișate ? Le-au întors, răsucit, turtit și îngroșat doar ca să se afle în treabă și să pună bețe-n roate aiurea săracilor utilizatori ? Sau au avut un motiv întemeiat pentru asta ? Ia hai să cităm din wikipedia (un articol pe care ZĂU c-ar trebui să-l citească și cei de la adcaptcher) :

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

Mai dăm și “de pe net” :

In this paper, we analyse the security of a text-based CAPTCHA designed by Microsoft and deployed for years at many of their online services including Hotmail, MSN and Windows Live. This scheme was designed to be segmentation-resistant, and it has been well studied and tuned by its designers over the years. However, our simple attack has achieved a segmentation success rate of higher than 90% against this scheme. It took ~80 ms for our attack to completely segment a challenge on a desktop computer with a 1.86 GHz Intel Core 2 CPU and 2 GB RAM. As a result, we estimate that this Microsoft scheme can be broken with an overall (segmentation and then recognition) success rate of more than 60%. On the contrary, its design goal was that “automatic scripts should not be more successful than 1 in 10,000″ attempts (i.e. a success rate of 0.01%). For the first time, we show that a CAPTCHA that is carefully designed to be segmentation-resistant is vulnerable to novel but simple attacks. Our results show that it is not a trivial task to design a CAPTCHA scheme that is both usable and robust.

(de AICI(pdf) via zdnet)

Și da, doar prin segmentare și OCR. Nu știu care-i rata de penetrare a spamului în cazul adcaptcher însă nu este absolut deloc relevantă la momentul ăsta. Pentru majoritatea internetului adcapthcer este încă o soluție necunoscută și nebăgată încă în seama. Însă pot să pun pariu că atunci când va deveni (dacă va deveni) cunoscută, n-o să pună prea mari probleme librăriilor ocr pentru că, în mod clar, este ușor de segmentat  mesajul literă cu literă.  Momentan se folosește de “security through minority“. Și le merge bine (mă rog, până când uită să plătească domeniul :D).

N-o fi captcha o soluție perfectă la problema spamului și nici nu există încă așa ceva însă este una dintre soluțiile cel mai des răspândite. Și împreună cu alte soluții (de tip akismet) pot rezolva aproape total problema spamului. Reinventarea roții nu-i de-ajuns.

Ah, și hai să mai dau o idee gratuită celor cu adcapthcer. Dacă tot se folosesc de serverele proprii ca să afișeze reclama, ce-ar fi să folosească și un sistem bazat pe reputație atunci când “acceptă” comentariile. Un soi de akismet+captcha integrat. Think about it…

Leave a Reply

14 Comments

  1. Razvan Tirboaca

    M-am gandit la treaba cu reputatia de la inceput insa adcaptcher nu parseaza textele din formulare ca Akismet, motivul principal fiind legat de privacy, gandeste-te doar la SignUp. Vezi ca testimonialele alea sunt luate din Twitter automat, nu le scriem noi..

    Apropo de bere, chiar am o propunere pentru tine, alege o zi saptamana viitoare si hai sa ne vedem.

  2. Meekuu

    Nici n-am spus că ați scris voi testimonialele. Tocmai asta vroiam si eu sa subliniez, utilizatorul obisnuit este total ignorant in privinta treburilor de genul asta. Pot sa bat pariu că peste 80% din bloggeri nici n-au idee exact la ce foloseste captcha si/sau akismet. Au auzit ca ar fi ok să fie instalate, cand au instalat un plugin s-au luat dupa popularitatea lui si cam atat. Am zis de la bun inceput ca am rezerve in privinta proiectului. Ah, da, a prins si o sa mai prinda foarte bine pana cand vor pune ochii pe el spammerii mari. Prinde pentru ca se folosește atât de dorința proprietarului de site de-a monetiza platforma cât și de problema utilizatorului obisnuit de-a introduce un text stâlcit de fiecare dată. Însă se află în opoziție totală cu securitatea site-ului (pentru că sunt sigur ca nu e o problemă dacă poate sau nu poate fi ocolit adcaptcher ci când va fi ocolit) și în opoziție cu confortul utilizatorului obișnuit de-a introduce un text de reclamă. Reclamele deja ii sunt aruncate in fata de peste tot si s-ar putea sa fie mulți utilizatori care să nu accepte ideea de reclamă în locul captcha (vezi scandalul de pe voxpublica).

    Nu trollez DOAR din plăcere. Mă deranjează faptul că, deși securitatea este o problemă mai mult decât gravă în lumea IT iar userii sunt departe de-a fi educați în această privință, tot apar voci și proiecte care spun că este mult mai importantă usabilitatea iar securitatea n-ar trebui să fie problema utilizatorilor. Ceea ce intr-o lume ideala ar fi adevărat dar la ora actuală nu este cazul să facem pași înapoi. Apar zilnic povești cu probleme legate de confidențialitatea datelor personale iar tendința este de-a face tot mai multe folosind internetul. Bani, viată personală, viață profesională, toate ajung să aibă legătură cu internetul.

  3. Razvan Tirboaca

    Am inteles ce vrei sa zici insa nu inteleg de ce te suparra faptul ca Average Joe nu se intereseaza/nu-I pasa de securitate.

    Sunt 2 chestii:
    – nu vrei sa stie lumea ceva, atunci nu l pune pe net. Pt mine e foarte clar ca privacy-ul e pe cale de disparitie si tot circul in legatura cu asta (Facebook, foursquare) e doar la impresie artistica. Generatia noua nu intelege prin privacy ce intelegem noi.
    – cine se pricepe stie cum sa se protejeze. A-I educa pe ceilalti (multi) nu e un business profitabil.

    Despre AdCaptcher:
    – sunt mai multe filtre de securitate care nu se vad din prima
    – nu e nimic revolutionar, nici nu am afirmat asa ceva. Nu-mi doresc ceva revolutionar decat cand (daca) voi avea oua suficient de mari incat sa pot crea si piata. Altfel se numeste rateu.
    – Never ever sa iei ca relevant feedback-ul din .ro, indiferent de produs. Pe langa ca nu stim sa dam feedback ci doar sa criticam, nici macar critica nu se trage din dorinta de a fi obiectiv. Plus ca nu avem experienta de consumator necesara pentru a emite pareri.

  4. Meekuu

    Razvan, nu mă supără faptul că Average Joe nu e interesat de securitate. Aș putea spune că este fix problema lui. Într-o lume ideala lui Average Joe ar trebui să i se rupă-n paișpe de securitate. Unealta aia pe care a dat banii ar trebui să-i ușureze munca fără să-i ridice noi probleme.
    Dar asta zic, nu este cazul. Nu trăim într-o lume ideală iar pe Average Joe poate să-l usture curul fără să-și dea seama de unde i s-a tras. Și dacă zicem că nu-i treaba noastră să-i educăm pe ceilalți ne cam înșelăm. Pentru că, vrând nevrând, ceea ce face (sau mai bine zis ceea ce nu face) Average Joe ne afectează pe toți. Sistemele găurite cu troieni, viruși, rootkit-uri folosite de miile de Average Joe din lumea asta ne îngreunează nouă munca, sunt folosite pentru a ataca la rândul lor alte sisteme și tot așa.
    Dacă vom continua să alimentăm comoditatea lui Average Joe vom plăti din ce în ce mai scump. Securitatea nu este doar un moft.

  5. Razvan Tirboaca

    Tu vorbeai de securitate, eu vorbeam de privacy. Sunt diferite..

    Si problema cu securitatea este data de rapiditatea cu care se dezvolta tehnologia .. nu ai cum sa-i ceri lui Average Joe sa fie la curent cu toate metodele prin care cineva i-o poate trage. Nici tu, desi e jobul tau, nu cred ca esti 100% la curent cu ele si nici nu ai avea cum pentru ca apar continuu metode noi.

    Drept urmare, daca vrei ca Average Joe sa fie cat de cat protejat, da-i ceva “antivirus style” pe BANI, pe care sa-l poata instala cu un click si sa-si vada in continuare de treaba. Iar tu ia banii si dezvolta ce e necesar. Deci nu-i alimentam noi comoditatea, ci plateste singur pt ea. Si va plati cand se va arde..

    Nu cred ca solutia cu “educarea” functioneaza. E ca si cum m-ar duce un doctor in sala de operatii si mi-ar pune bisturiul in mana, crezi ca ma poate “educa/invata” meseria lui? Nu pentru ca nu am timp/chef/placere sa stiu toate metodele prin care as putea da gres. Average Joe vrea sa se uite la filme, sa asculte muzica, sa stocheze poze si sa se dea pe Facebook/net. Atat.. nu uita ca o fi Average pe net dar poate Master pe alt domeniu. Si noi invers :)

  6. Meekuu

    Drept urmare, daca vrei ca Average Joe sa fie cat de cat protejat, da-i ceva “antivirus style” pe BANI, pe care sa-l poata instala cu un click si sa-si vada in continuare de treaba. Iar tu ia banii si dezvolta ce e necesar. Deci nu-i alimentam noi comoditatea, ci plateste singur pt ea. Si va plati cand se va arde..

    Problema este că există firme care-i flutură sub nas lui Average Joe un produs pe bani, care se instalează ușor dar care face fix un rahat. Iar Average Joe stă liniștit știind c-a plătit ceea ce era lăudat ca fiind un produs revoluționar și ajunge mai devrem sau mai târziu să dea cu mucii-n fasole. Și aici bat direct spre jucăria voastră. Am mai spus de vreo 2 ori asta. Principala mea “grijă” (să-i zicem) la momentul actual este că textul din imaginile de pe adcaptcher este ușor de segmentat și ocr-izat. Ar mai fi și lipsa unui lot mare de imagini chestie care face simplă alcătuirea unei baze de date cu reclamele care rulează pe un site și rezolvarea lor “de mână”. Dar aici am văzut că sunt alterate imaginile de fiecare dată în așa fel încât să nu producă imaginea identică (desi cred că nici metoda asta nu este infailibilă).
    Am mai spus, m-a deranjat destul de mult că am fost printre puținii care au ridicat probleme și au pus semne de întrebare în dreptul adcaptcher. Și asta nu e normal. Consider că-i mult mai constructivă o critică decât o laudă din partea unui Average Joe plictisit să se uite la reCaptcha cu ochii în cruciș.

    Și privacy și security sunt subiecte tangente. Eu nu am zis să-l învățăm pe Average Joe să-și repare singur găurile de securitate. Am zis doar că trebuie educat să urmeze un set minim de reguli care-l pot ajuta să nu mai fie o victimă sigură. Pentru că în mod clar nu putem să reparăm noi “internetul” pentru ei.

  7. Razvan Tirboaca

    Te invit sa l spargi, pana atunci iti faci “griji” teoretice si degeaba. Si dupa ce aflu cum l-ai spart, te invit sa-l mai spargi o data si tot asa.. tu nu intelegi ca un produs (mai ales online) e in permanenta dezvoltare? Putem itera produsul de 10 ori pe zi, daca e cazul. Plus ca daca eu schimb o virgula, tot sistemul prin care cineva il sparge trebuie refacut. Sunt provocari mult mai mari la care trebuie sa gasim solutie decat problema securitatii, gen market share, atragere advertiseri, etc etc. Tu nu vezi decat felia ta :) apropo de ce ziceam mai sus.

    Dar apreciez articolele/discutiile tocmai pentru ca sunt constructive. Ti-am zis, dau berea oricand!

  8. Meekuu

    :)) Discuția asta ar fi trebuit purtată de la bun început la o bere.

    Nu-s programator dar asta nu înseamnă că nu-s conștient de limitările și eventualele puncte slabe ale unui sistem. Da, știu, puteți repara în timp relativ rapid orice bug însă având în vedere că voi vreți să vă creați o piață, orice greșeală costă. Din păcate ultima oară v-a costat dintr-o prostie.

  9. Razvan Tirboaca

    Da, din greseli inveti! Alegerea furnizorilor e vitala. Ce sa faci daca .ro nu expira.. :)

  10. Meekuu

    Oh, c’mon, oi fi eu leneș da’ până și eu îmi pun reminder în google calendar când am ceva de genul ăsta… :D. Nu e vina furnizorilor decât într-o foarte mică măsură…

  11. Razvan Tirboaca

    Prin ultima propozitie ma refeream la noi, nu la furnizori. A fost vina noastra ca nu am fost atenti (din obisnuinta .ro-ului). Un furnizor ok ne-ar fi scapat de situatia jenanta. Oricum, am descoperit cu ocazia asta si problema redirectului (noi aveam solutie implementata pentru server picat, nu si pentru schimbare dns). Deci tot raul spre bine.. :)

  12. Meekuu

    De asta m-am și amuzat copios. Am și zis, “uite-i frate pe ăștia, și-au luat domeniu .com că deh, vor să-și lanseze startup-ul și p’afară și-au adormit cu el în brațe crezând că-i .ro ” :D

  13. Razvan Tirboaca

    E de ras si plans.. ultimul an mi-a aratat ce lacune grave avem însămânțate in noi din cauza societatii fix pe invers in care traim. Ori iei steroizi, ori mori .. apropo de sansele de reusita internationala din Romania.

    Am citit ultimul tau post cu Gecad.. eu sunt convins ca in vreo 3 ani vom avea 2-3 echipe care vor pune Romania pe harta (3 ani minim) insa restul vor fi o gluma buna pentru piata internationala (sunt constient ca e public ce scriu). Si asta din cauza ca aici sistemul e total anti-antreprenorial, si cel legal si cel social.

  14. arond

    @meekuuu @tirboaca:

    Baieti, de ce nu va scrieti intre voi direct in engleza? Ar fi mai simplu pentru toata lumea.

Next ArticleȘcoala de afaceri