CAPTCHA hacking e pensiero laterale

Cos'è un CAPTCHA? Sono delle immagini che celano delle stringhe alfanumeriche difficilmente interpretabili da una macchina ma facilmente da un umano.


CAPTCHA è l'acronimo di "completely automated public Turing test to tell computers and humans apart" ovvero "Test di turing pubblico e completamente automatico per distinguere umani da computer".

I CAPTCHA oggi vengono utilizzati un po' dappertutto in forum o blog che prevedano un invio anonimo e quindi senza autenticazione di dati. Senza CAPTCHA un bot potrebbe allegramente inviare montagne di SPAM come post e farsi pubblicità!

Più di tre anni fa assistetti ad un seminario che analizzava le tecniche di hacking per interpretare correttamente il contenuto di un CAPTCHA. Ricordo fra tutte l'OCR, con le analisi di quanta distorsione fosse necessaria per evitare che ottimi programmi e algoritmi di OCR riuscissero ad interpretare correttamente la stringa.

Tutto nella norma... ma Fatta la legge, trovato l'inganno!

Un annetto fa lessi un articolo in cui si intervistava un hacker estone o russo (è una zona endemica di hackeraggio) a cui l'intervistatore poneva questa domanda:

"Nel caso di CAPTCHA gli hacker sono però dentro un vicolo cieco: se la distorsione è buona l'OCR non può fare molto!"

E l'hacker candidamente rispondeva:

"Nessun problema: non faccio altro che creare un sito porno e gratuito in cui per vedere immagini e filmati l'utente è obbligato a validare un CAPTCHA. Al momento di fornire il CAPTCHA non faccio altro che inviargli quello proposto dal sito attaccato, ed il gioco è fatto!"

Pensiero laterale!

Come bypassare un test di turing? Usando un umano, mi sembra ovvio. E come usare umani in attività di questo tipo? Creando un sito porno, mi sembra altrettanto ovvio!

L'originalità di queste persone mi stupisce sempre :-)

Un altro problema dei CAPTCHA è che non sono utilizzabili da utenti ipovedenti e questo è un problema. Per ipovedenti intendo anche persone anziane o che hanno problemi di vista notevoli. E devo dire che anche io a volte faccio fatica ad interpretare la stringa...

Commenti

Post popolari in questo blog

Exploit: icsploit o espluà?

Rappresentazione 3D di Worm, spam, ...

Code review e HTTPS