In questo articolo si parla delle sempre maggiori capacità dei BOT di aggirare i CAPTCHA e quindi riuscire a pubblicare tonnellate di spam in giro per i forums.
Google ne sta mettendo a punto uno che è basato, anzichè sulla decodifica di un testo camuffato in qualche modo dentro un’immagine, sulla rotazione di alcune immagini, in modo che solo un umano sia in grado di raddrizzarle ottenendo così l’accesso alla scrittura.
Mi viene il dubbio che questa soluzione non sia vulnerabile ai bruteforce attacks, nel senso che un bot potrebbbe provare a girare l’immagine per gradi fino ad ottenere la vittoria. Immaginando che un sistema del genere abbia un numero finito di immagini da cui attingere, anche se dopo 3 tentativi l’immagine cambiasse, come fa ora con i testi da decifrare, basterebbe immagazzinare i fallimenti per arrivare prima o poi al successo, d’altra parte il grande vantaggio dei BOT è che hanno tantissimo tempo da perdere e non conoscono nemmeno il concetto di noia.
Se io dovessi scrivere un CAPTCHA, e non ne ho la minima voglia, creerei un semplice puzzle con un’immagine, divisa in 4 pezzi ruotati variamente. Per ottenere l’accesso occorrerà ottenere la combinazione: B30A25C19D06 composta dall’ordine delle immagini per completare quella finale, col fatto che da una singola immagine se ne possono creare dozzinaia e dozzinaia, randomizzando i “tagli” e le rotazioni e che ad esempio si potrebbero rendere pseudocasuali anche i simboli che si usano per la combinazione (usare % anzichè A nell’esempio) e i numeri romani anzichè quelli arabi. L’algoritmo potrebbe essere tranquillamente pubblico e reversibile, d’altra parte lo scopo di un test di Turing non è certo quello di “rompere” l’algoritmo, quanto di sfruttarne le eventuali falle.
Se ne avessi mai voglia e tempo (lo escludo) magari lo scrivo davvero.