Blíží se konec klasického CAPTCHA testu?

Čtvrtina spamu dnes pochází z důvěryhodných poštovních schránek na Hotmailu, Gmailu nebo Yahoo! Mailu, autorům malwaru se totiž podařilo překonat většinu klasických CAPTCHA testů.

Osm let po vzniku prvních CAPTCHA technik tento systém obrany proti robotům začíná kolabovat. V roce 2008 byl pokořen Turingův test prakticky na všech velkých webových službách včetně Windows Live nebo Google.

CAPTCHA je zkratkou pro Completly Automated Public Turing test to tell Computers and Humans Apart“. Hezky-česky se tedy jedná o Plně automatizovaný Turingův test. V praxi se jedná o kontrolu, jestli s webovou stránkou komunikuje skutečný člověk nebo stroj, zpravidla spamovací robot. Nejtypičtějším CAPTCHA testem je soubor nahodilých znaků, které musíte opsat do kontrolního pole.

Znamená to tedy, že má CAPTCHA test na kahánku? Samozřejmě nikoliv, v ohrožení jsou pouze velké služby, které jsou napadány botnety – obrovskými sítěmi nakažených počítačů. Ty pak rozesílají spam na velká webová fóra, na e-mail a registrují se na Hotmail, Gmail nebo Yahoo! Mail, odkud pak rozesílají „věrohodné“ e-maily.

Tip: O Turingově testu na webu se více dozvíte v článku CAPTCHA: Jak se stát otrokem podivného obrázku

Před útokem botnetu, který se může skládat z mnoha tisíců počítačů, není prakticky úniku, společnou silou totiž tyto nakažené počítače bombardují CAPTCHA kontrolu, dokud se jim to nepodaří. Podle některých zdrojů ti nejlepší roboti překonají webový Turingův test během několika málo sekund. To ale skutečně platí pouze o velkých službách, pokud by se totiž botnet zaměřil na malý web na běžném českém hostingu, bez problému by jej obrovským množstvím svých pokusů „shodil“. Jednalo by se ve své podstatě o takový malý DoS útok. Hackery naštěstí malé české weby nezajímají a ty velké jsou na to připraveny.

webmail_spam.png
Vývoj počtu spamů rozeslaných z důvěryhodných webových e-mailů (Symantec MessageLabs)

Základní metody přechytračení CAPTCHA testu

A jak dnes vlastně roboti překonávají CAPTCHA kontrolu na webu? V praxi existují tři základní metody, které hackeři doposud použili:

  • Chyby v implementaci CAPTCHA testu
  • OCR
  • Lidský faktor

Takže pěkně popořadě. Mnoho drobných webů sice používá kvalitní CAPTCHA test, mohou ho mít ovšem špatně implementovaný. Typickou chybou je třeba to, že v případě zvládnutí testu vás webový server přesměruje dejme tomu na stránku prosel-testem.html. Pokud je taková stránka v každém případě stejná a roboti ji odhalí, napříště budou posílat formulářová data rovnou sem a celý test obejdou. Tato chyba naštěstí pomalu mizí, ve většině případů se totiž společně s formulářovými daty posílá hash kód – unikátní kontrolní soubor znaků, který roboti bez zpracování CAPTCHA kontroly nezískají.

OCR, tedy rozpoznávání textu v obrazu, je stále nejčastější metodou překonání CAPTCHA testu. Robot jednoduše rozkóduje text, vyplní formulář a je v cíli. Testy jsou samozřejmě stále složitější, robot tedy takových pokusů může vykonat poměrně velké množství, případně se na celou operaci bude soustředit hned několik nakažených počítačů v rámci jednoho botnetu.

recaptcha.png
Ukázka klasického textového CAPTCHA testu (reCAPTCHA)

Třetí metodou, už poměrně exotickou, je použití levné pracovní síly – člověka, jeho mozku a jeho klávesnice. Jako příklad uvedu třeba případ z roku 2007, který odhalili experti z Trend Micro. Po síti se tehdy šířil malware, který uživatelům slíbil obrázky nahých svůdných žen, uživatel ale musel po každém odloženém kousku šatstva projít klasickým CAPTCHA testem. Slečna v rouše Evině se nakonec skutečně zobrazila, uživatelé ale během tohoto procesu vyplnili zcela nevědomky hned několik CAPTCHA testů regulérních webových služeb.

Metoda „lidský faktor“ je nejúčinnější, je ale pomalá a na rozdíl od skrytého botnetu poměrně transparentní a brutální síla velkého botnetu společně s OCR technikou to samé dnes ostatně dokáže během několika sekund a bez striptýzu.

Naprosto specialitou jsou regulérní internetové firmy, které za finanční obnos nabízí „marketingovou službu“, v rámci které pomocí svého vlastního systému překonají CAPTCHA test a umožní vám rozesílat „reklamní letáčky“ aj.

Autoři webových Turingových testů se ale nevzdávají a pracují na stále dokonalejších technikách, které by přitom nebyly pro běžného člověka příliš složité. A naštěstí to jde, lidský mozek má totiž oproti mechanickému počítači stále výhodu imaginace a dalších vlastností. Toho využívají autoři obrázkového CAPTCHA testu.

SQ-PIX CAPTCHA test

Již v předchozím článku jsem zmínil projekt Asirra od Microsoftu, který namísto textového obrázku zobrazí matici fotografií zvířat a na vás je, abyste vybrali třeba pouze ty obrázky, na kterých je kočka. Vzhledem k tomu, že současné OCR techniky si poradí pouze s jednoduchými geometrickými tvary – textovými znaky, Asirra a ti druzí mohou být přinejmenším dočasným řešením.

asirra.png  kittenauth.png
Ukázka obrázkových testů Microsoft Research Asirra a KittenAuth

Prakticky totožně jako Asirra pracuje také projekt KittenAuth, jako z jiného světa ale působí projekt SQ-PIX a IMAGINATION.

SQ-PIX mají na svědomí původní autoři CAPTCHA testu z Carnegie Mellon, kteří v současné době provozují také projekt reCAPTCHA a ESP-PIX, který je ale v tuto chvíli dočasně mimo provoz.

sq-pix.png  sq-pix.png
Ukázka unikátního SQ-PIX CAPTCHA testu: obtažení všech nástrojů a panenek jako kontrola na člověka

SQ-PIX se skládá ze čtveřice obrázků a systém se při každém požadavku dotáže, na kterém z nich je určitý předmět. Oproti Asirra nebo KittenAuth ale musíte na obrázku objekt přesně obtáhnout myší.

IMAGINATION CAPTCHA test

IMAGINATION test se pro změnu skládá z dvou kroků. Nejprve musíte obrázek analyzovat a posléze popsat. Na začátku se tedy zobrazí velká koláž skládající se hned z několika samostatných obrázků. Vy si některý z nich vyberete a myší určíte jeho střed, což by mělo být pro počítač nepřekonatelnou překážkou. Pokud by stroj ale přesto testem prošel, čeká ho ještě klasické rozpoznání objektu na obrázku. Tím může být zvíře, ale také šroubovák a na vás je, abyste z nabídky vybrali ten správný odpovídající předmět. Nutno podotknout, že pro neznalého angličtiny je to občas nepřekonatelný oříšek, ne každý totiž ví, jak se řekne v internetové lingua france tapír nebo rosomák, pakliže uživatel vůbec rozpozná, co to vlastně na obrázku je.

IMAGINATION.png  IMAGINATION.png
Obě části IMAGINATION testu: v prvním musíte určit střed libovolného obrázku, ve druhém pak poznat, co je na obrázku

Obrázkové CAPTCHA testy se zatím prosazují jen velmi těžce a jedním z důvodů je právě nutná lokalizace do všech známých jazyků. Zatímco nahodilý text rozpozná prakticky každý a nezáleží, jaká je jeho úroveň podporovaného jazyka, u identifikace obrázků je to mnohem těžší. Z tohoto úhlu pohledu je tedy nejpřístupnější první část IMAGINATION testu.

Obrázkové CAPTCHA testy, pokud si najdou své fanoušky, mohou jistý čas odolávat náporu robotů, z dlouhodobého hlediska ale nemají šanci, už dnes se totiž pracuje na inteligentních OCR technikách, které si poradí nejen s rozpoznáváním textu v obrázku ale i s rozpoznáváním složitějších geometrických struktur. Za zmínku stojí chytré kompaktní fotoaparáty, které při ostření najdou ve scéně lidskou tvář nebo vyhledávače Google, Live Search a také český MUFIN. Zůstává tedy otázkou, kdy podobné technologie zdokonalí i autoři botnetů a OCR robotů. Je to otázka několika let.

Diskuze (19) Další článek: Mozilla chce monitorovat chování uživatelů Firefoxu

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , ,