#

Turing-Test

Der Artikel „Bot registriert sich in mehreren tausend phpBB-Foren“ auf heise machte mich auf eine interessante Thematik aufmerksam: Captchas als Turing-Tests.

Captchas sind diejenigen Tests auf Registrierungsseiten, bei denen der Benutzer ein verzerrtes Bild vorgesetzt bekommt, in dem eine Buchstaben oder Ziffernfolge abgebildet ist, und diese zur Verifikation eingeben muss. a captcha

Im Prinzip handelt es sich hierbei um einen simplen Pseudo-Turing-Test, welcher feststellen soll, ob es sich bei dem Benutzer um einen Menschen oder einen Computer (Bot) handelt. (Pseudo, da der eigentliche Turing-Test die grundlegendere Frage „Können Maschinen denken?“ behandelt.) Davon leitet sich auch die Bezeichnung Captcha (Completely Automated Public Turing-Test to Tell Computers and Humans Apart) ab.

Tatsächlich wäre wohl kein einfacher Computer in der Lage eine auch nur annähernde Fragestellung, wie ein Captcha, zu beantworten, hätte er nicht einen findigen Menschen hinter sich, der ein Programm schreibt, um diese spezielle Problemstellung zu lösen. So beschäftigt sich Sam Hocevar mit dem PWNtcha – captcha decoder und klassifiziert verschiedene Güten der Captcha-Tests, welche er zum größten Teil mit seinem Programm lösen kann. Auch Greg Mori und Jitendra Malik von der Uni Berkeley beschäftigen sich in ihrem Artikel „Breaking a Visual CAPTCHA“ mit grundlegenden Vorgehensweisen, wie der Nutzung von Algorithmen zur Erkennung von Objekten auf Bildern, Kantendetektionen etc., einen Captcha-Test automatisch zu lösen. (Ja, Camil, für die Objekterkennung auf Bildern gibt es auch Ansätze mit KNN). Sie stellen aber zugleich eine etwas sicherere Variante des Captcha vor: ein Bild mit mehreren (etwa 10) Begriffen, die der Benutzer eingeben muss. So verringert sich die Klassifizierungswahrscheinlichkeit eines Algorithmus.

Dennoch scheinen einige Captchas auch für Menschen problematisch zu sein und werden in den Artikeln „Inaccessibility of CAPTCHA“ und „Escape from CAPTCHA“ von Matt May (W3C) generell kritisiert.

Damit stellt sich natürlich die Frage, wie ein Turing-Test aussehen sollte, der durch Algorithmen nicht automatisch von Computern bestanden, aber für einen Menschen ohne größeren Aufwand gelöst werden kann. Letztendlich handelt es sich im Fall von Registrierungsseiten eher um Authentifizierungsprobleme, welche durch einen Turing-Test gelöst werden.

Sowohl die bekannten als auch andere Captcha- oder Turing-Tests sind jedoch nicht im Stande Sicherheit zu bieten. Der Artikel „Solving and creating captchas with free porn“ von Cory Doctorow berichtet über eine sehr findige Strategie von Spammern, solche Tests von menschlichen Benutzern lösen zu lassen: Der Spammer richtet eine freie Pornoseite ein, auf die sich der Benutzer erst nach der Lösung eines Captcha einloggen kann. So lösen echte Menschen unwissenderweise die Turing-Tests, die den Spambot im Hintergrund der Pornoseite abhalten soll. Damit sind natürlich prinzipiell alle Turing-Tests zu knacken.

Tags:, ,

2 Responses to “Turing-Test” »»

  1. Comment by TestMaster | 1:14 22.03.06|X

    Hallo,
    toni verwendet doch solch ein captcha oder etwa nicht?!?.
    Mich würde interessieren ob solche „bots“ auch Sprachenspezifische Sonderzeichen erkennen??. Sprich ein captcha der ein ä,ö,ü enthält oder aus der russischen sprache stammende Buchstaben.
    Also lasse ich mir solche captcha generieren die immer ein oder mehrere klein oder groÃgeschriebene ö,ä,ü verlangt.
    Also könnte so ein bot dieses dann auch „knacken“. dafür müssten die Zeichen ihm ja erstmal bekannt sein.
    Ich denke viele sehr viele bots haben nur Zahlen,Buchstaben und Sonderzeichen drauf. Das ist eh schon viel. Daher meinte ich damals zum Toni, wenn er will das NUR leute aus GER was ins blogg schreiben sollen dürfen, so soll er captcha’s erstellen die immer ein ä,ö,ü enthalten.
    So könnte er mit Sicherheit viele bots „ausschalten“.

    Aber.
    Falls die bots die captchas als „bild“ betrachten und das Bild analysieren etc ist es schwer. Aber wie aus deinem Artikel hervorgeht wird da erst noch dran geforscht oder??.

    Wie gesagt ich denke ein vorerst „guter“ schutz vor unerwünschten captcha’s bots wäre einfach ö.ä.ü in das Bild einzubauen. So kann dies nur jemand machen der eine GER Tastatur hat bzw gibt es ö.ä.ü in ASCII.?
    Gibts auch bestimmt.;-)) Nun jedenfalls könnte jemand der KEINE ä,ü,ö hat schonmal „nicht so einfach“ was posten. Er müsste sich was „überlegen“ wie er nun ä.ö.ü ersetzt. Und selbst für ein KNN ist das „überlegen“ nicht immer einfach bis gar unmöglich. Ich weià das KNN’s Objekte erkennen kann. Aber nicht immer Perfekt. D.h ein KNN würde mehr als 1 Versuch brauchen bis er das captcha „knackt“, weil er ein I als ein L oder 0 als O nicht auf anhieb unterscheiden könnte.
    Also brauche ich die Eingabe des captcha’s auf max 3 Versuche einstellen und schon hätte ein KNN sowie ein user halt nur 3 Versuche um das cpatcha’s richtig einzugeben. Ein KNN würde es nie schaffen völlig frei generierte Objekte mit variabler länge in 3 Zügen korrekt zu erkennen. Da können die leute von Barkley noch lange Forschen.:-))

    Und wenn es gehen würde mit vielen Neuronen so würde es selbst mit schnellen PC’s lange dauern bis er Objekte richtig erkennt. Dann würde ich einfach die Eingabe mit einem 20sec timeout versehen. Nun bräuchten wir ein KNN das innerhalb von 20sec das captcha knackt.

    Das was du mit der Pornoseite beschreibst bzw der eine Artikel führt wieder in die Scene des „Social Engeneering“ bzw „Social Hacks“. Locke jemanden mit „dem was er will“ z.b Sex und hole dir was du brauchst.
    Das ist die typische nummer die na ja „hacker“ abziehen um an Passwörter zu kommen. Sie gehen halt die schiene die manchmal am einfachsten ist. Man Fragt na dem Passwort und erstaunlicher weise bekommt man es gesagt.:-))

    GruÃ

  2. Comment by Secco | 10:27 22.03.06|X

    Wie du schon sagst, sind Sonderzeichen kein Ausweg, denn andere Länder, andere Tastaturen. Es dürfte aber auch kein Problem für PWNtcha sein, auch andere Zeichen zu erkennen. Besonders genau beschreibt der Autor die Techniken nicht, die sein bereits funktionierendes und lauffähiges Programm hat (die Captcha-Hack Software ist also schon bereits existent und reif, nur noch nicht publiziert!).
    Das Problem mit 0 und O haben auch die Menschen, weswegen das auch nichts bringt. Die Captchas werden dabei immer als Bild betrachtet. Mit einem OCR Programm, wie Abby FineReader, kann man auch so nicht verzerrte Bilder in Text umformen lassen. Meines wissens kann der FineReader dabei auch noch lernen und damit sich auch bestimmten Verzerrungen anpassen. Davor kann das bild natürlich gefiltert werden. Dabei kann eine Kantendetektion und Schwellwertfilter benutzt werden, um die Buchstaben vom Hintergrund zu lösen. In einigen Fällen reicht dafür sogar ein Farbfilter, da der Hintergrund eine ganz andere Farbe hat als der eigentliche Text. Kennt man das Captcha generierende Programm, so kennt man meist auch die wenigen Verzerrungs-Filter die es benutzt und kann diese ebenfalls automatisch entzerren.

Leave a Reply »»

Note: All comments are manually approved to avoid spam. So if your comment doesn't appear immediately, that's ok. Have patience, it can take some days until I have the time to approve my comments.