Kostnaden för att knäcka CAPTCHAs

För en vecka sedan skrev jag om Pensionsmyndighetens beslut att införa en teknisk lösning kallad CAPTCHA för att stoppa robothandel. Det jag försökte visa var att det problem myndigheten sade sig ha inte är en bra lösning – en CAPTCHA stoppar inte datorer, samtidigt som den valda lösningen försvårar för mänskliga användare och slår ut bra tjänster.

reCAPTCHA
reCAPTCHA

En metod för att forcera CAPTCHAs myndigheten öppnar upp sig för som jag beskrev är att använda människor som stödfunktion för datorer. Jag fick efter min postning frågor om hur realistiskt det är  – om det går att göra och om det inte kostar för mycket. Som tur postade Boingboing en artikel om tjänster där människor används för att attackera CAPTCHAs. Och där finns det bra prisinformation. Artikeln handlar om ett ryskt företag, KolotiBablo som kopplar samman arbetare med applikationer som behöver knäcka CAPTCHAs:

Paying clients interface with the service at antigate.com, a site hosted on the same server as kolotibablo.com. Antigate charges clients 70 cents to $1 for each batch of 1,000 CAPTCHAs solved, with the price influenced heavily by volume. KolotiBablo says employees can expect to earn between $0.35 to $1 for every thousand CAPTCHAs they solve.

Dvs maximalt en tusendels dollar för en CAPTCHA. KolotiBablo är lång ifrån den enda tjänsten. Tjänsten med det vackra namnet Deathbycaptcha tar 1.39 USD för 1000 CAPTCHAS och redovisar dessutom lite statistik för sin tjänst. Medeltiden att knäcka en CAPTCHA är 17 sekunder och har 90% chans att lyckas.

För den som vill läsa mer om KolotiBablo finns mer i en artikel om företaget och dess tjänster hos KrebsonSecurity (en artikel som Boingboing pekar på). Det finns även en bra forskningsartikel som tittar närmare på ekonomin för att knäcka CAPTCHAs, en artikel väl värd att läsa om du vill förstå hur denna marknad fungerar.

9 reaktioner på ”Kostnaden för att knäcka CAPTCHAs

  1. Jag tror faktiskt du gräver dig för djup med i ditt fackområde för att se ”the bigger picture”. Robothandel bygger på en fantastisk mängd transaktioner och reaktionstider på bråkdelar av sekunder.

    Att i den kontexten introducera en funktion som gör att du får 90% hitrate inom säg 17 sekunder och en extern transaktionskostnad kan vara ett fundamentalt hinder för denna marknadsmekanism.

    Captcha introducerar en tröskel i tid som är det fundamentala.

    Om man sedan är för eller emot robothandel är en annan fråga, men självklart så plockar detta bort en liten del av robothandelns konkurrensfördelar.

    1. Mitt fackområde är att se ”the bigger picture” och detta är snarast ett bra exempel på när man väljer en lösning utan att göra en analys från toppen – att se till hotbild, affärsnytta, användbarhet och konsekvenser av möjliga åtgärder.

      Ja, lösningen kanske löser problemet, iaf temporärt. Men lösningen sätter myndigheten mitt i ett kapprustningskrig där det finns många drivkrafter för att sänka kostnaden och öka prestandan. Samtidigt ger den införda åtgärden en massa bieffekter som är väldigt negativa. En CAPTCHAs funktion är inte att introducera en fördröjning, det är bara en bieffekt vars storlek ändras – och dessutom utanför myndighetens kontroll.

      Som JonasB säger hade det uppfattade problemet gått att lösa enklare genom andra åtgärder. Åtgärder som med stor sannolikhet skulle kostat mindre att införa och underhålla samt varit under myndighetens kontroll.

      1. Jag håller inte med alls – varken dig eller Jonas B.

        Jag tycker du är inne på att döma ut en lösning vara för att det finns brister som i mångt och mycket är hypotetiska. Ett bra exempel på det jag i annan diskussion liknade med att döma ut retinascanners eftersom dom går att lura om man dödar något, skär ut ögonen och använder som ”nyckel”.

        Detta är OERHÖRT mycket bättre än inget och köper MASSOR av tid att fundera på hur en version 2 skulle kunna se ut. Jag jobbar alltid iterativt – först version 1 och sedan version 2.

        Det är en lösning som finns här och nu och som används i miljoner varje dag. Dessutom är ReCAPTCHA dessutom en suverän tjänst av andra skäl också. Se denna:

        http://www.youtube.com/watch?v=cQl6jUjFjp4

        Antar att uppsåtet är att validera att människor gör transaktionerna, så en fördröjning är en bieffekt. Maskiner kan ju ha godtycklig parallellitet så fördröjningen påverkar maskinen gaska lite men en sekventiellt arbetande människa fördröjs och människans konkurrenskraft över maskinen försämras då ytterligare. Riktigt dåligt förslag alltså!

        1. Det är inte en hypotetisk brist, recaptcha har redan knäckts och knäcks varje dag. Både av maskiner och människor.

          I mångt och mycke är det en tidsfråga innan datorer/algoritmer blir snabbare/bättre på att lösa recaptchas än människor.

          Hade myndigheten löst problemet genom att introducera tidsbegränsning så hade de inte gett sig in i problematiken att särskilja datorer från människor.

        2. (Retinadiskussionen kanske vi ska ta i det forumet.)

          Du får naturligtvis tycka vad du vil. Men utifrån en kostnadsbild hade det varit enklare och effektivare att redan från version ett lägga begränsningarna databasaccessen, inte köpa in en tjänst där det är bieffekten som ger skyddet. Även om du jobbar iterativt kan du försöka göra någorlunda rätt från början. Här blir det dessutom så att man börjar med en komplicerad lösning och skulle gå mot en enklare lösning. Om man nu skulle gå den vägen.

          KaptenKopp, precis som JonasB har helt rätt. Det är (till skillnad från utpetade ögon) allt annat än hypotetiska attacker och sätter myndigheten i en problematik dom inte hade behövt om dom gjort precis det du säger – försökt se helheten.

          Vad gäller robothandeln mot Pensionsmyndigheten hade dom redan från början en förhållandevis hög fördröjning. Det var inte millisekundrespons mot dom innan införandet av CAPTCHA och myndigheten har troligen inte varit med och jagat fysik närhet (i meter) till börsens maskiner. Det senare är något utpräglade robothandlare strävar efter.

          Sedan står det dig naturligtvis fritt att tycka något helt annat. Men att hävda att attackerna på CAPTCHAs är hypotetiska är att helt enkelt inte vara påläst.

  2. Pontus: Om det är allt man vill åstadkomma, kunde man inte bara införa en delay på, säg, 10 sekunder? Läsuppgiften framstår då som överflödig.

  3. Borde inte PPM vända på kuttingen och erbjuda ett robust webservice-api för de kunder som vill lägga ut förvaltningen på tredjepartsaktörer? Är man rädd för transaktionsmängden så skulle man i så fall kunna begränsa till en eller handfull transaktion per dygn och kund.

    1. Anders: Exakt. Uppenbarligen fann Sveriges pensionssparare att det fanns nytta av ett antal olika elektroniska tjänster runt sitt PPM-sparande. Detta borde myndigheten snarast stödja. Att differentiera mellan frekvens, antal statuskoll och transaktioner är ett exempel på hur man kunnat hantera det bättre.

  4. Jag förstår inte varför någon använder captcha då det endast ställer till problem för legitima användare.
    Det är allmänt känt att captcha inte skyddar speciellt bra mot något men är ett stort problem och besvär för den som använder en tjänst.
    Borde det inte vara bättre att använda ett eget skydd som bygger på logik istället.

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *