sixserv blog

welcome to teh #sixserv!

Captchas

mit 2 Kommentaren


Captchas, diese kleinen Bilder als Zugriffsbeschränkung, die verunstaltete Buchstaben mit teils zufälligen Hintergründen darstellen. Erst nach abtippen der Richtigen Buchstaben wird man als Mensch klassifiziert und man darf Formulare Senden oder den vor Software-Robotern(Bots) geschützten Bereich betreten. CAPTCHAS: Completely Automated Public Turing test to tell Computers and Humans Apart. Ein verdrehter Turing Test, ein Mechanismus der Voraussetzt das Menschen den Text lesen können und Computer nicht.

Doch Captchas sind lohnend. Es existiert ein richter Markt für das Erkennen von Captchas, die Spammer und andere zweifelhafte Gestalten zahlen zwischen $0.70 und $1.00 je 1000 erkannten Captcha. Doch längst gibt es nicht mehr nur Text-based-Captchas, von Audio-Captchas die verrauscht einzelne Buchstaben aufsagen, bis hin zu Rechenaufgaben die es zu lösen gilt oder das finden der Frau/Mann auf einem Bild:

Kreativer-Captcha: Wie heisst der Mann auf dem Bild?

Kreativer-Captcha: Wie heißt der Mann auf dem Bild?

Rechenaufgaben als Captcha

Rechenaufgaben als Captcha

Diese kreativen Captchas haben den Vorteil das erst jemand ein gezielten Angriff schreiben müsste, dann jedoch offenbart sich nach kurzen überlegen die Schwachstellen, die Rechenaufgabe ist einfach per OCR zu erkennen, und war nicht Google ein hervorragender Taschenrechner? Auch die Bilder der Personen-Konturen offenbaren dummerweise nach einigen Reloaden immerwieder die exakt gleichen Konturen, und auch hier ist die Schrift einfach zu erkennen. Die Frage ob ein Captcha sicher ist oder nicht kann nicht so leicht beantwortet werden. Mit genügend Motivation und Technischer Finesse kann sogut wie alles gelöst werden. Dabei reicht eine Erkennungsrate von 10% völlig aus, bei 1000 abgesetzten Spam-Versuchen kommen so immer noch 100 durch. Klassisch läuft ein Angriff auf ein Captcha in 3 Phasen:

  1. Vorverarbeiten des Bildes, entfernen von Hintergrundbilder, Kontrast erhöhen, etc.

  2. Segmentation: Die Buchstaben werden voneinander getrennt.

  3. Recognizion: Jeder Buchstabe wird per OCR erkannt.

Mittlerweile haben wir überaus fortschrittliche OCR-Software zur Verfügung, die freie alternative gocr usw. Einige wie z.B. Finereader erlauben zudem das antrainieren einer bestimmten Schriftsorte, perfekt für ein erkennen von Captchas. Moderne Captchas setzen deshalb bereits eine Stufe früher an. Das Schwierigste ist nämlich die Segementation, wo ein Mensch nicht die geringsten Probleme hat Buchstaben voneinander zutrennen, ist diese Aufgabe für den Computer fast unmöglich. Deshalb setzen gute Captchas daran das Segementieren möglichst Schwierig zu gestalten:

Segmentierung fast unmöglich

Segmentierung fast unmöglich

Der Strich verbindet die Buchstaben und macht Segementierung sogut wie unmöglich

Ein Strich verbindet die Buchstaben und macht die Segmentierung schwer

Teilweise werden auch neue Schriftarten kreiert die nur dem Captcha Generator zur Verfügung stehen um OCR-Software zu überfordern. Captchas sind seit langem Forschungsgegenstand, es gibt einige Papers die neue Algorthmen und Möglichkeiten beschreiben Captchas zu entschlüsseln oder die Zeichen zu segmentieren. Genauso wie es Aufsätze über das Erstellen von besonders sicheren Captchas gibt.

Eine weitere Möglichkeit Captchas zu entschlüsseln ist sie auf eigenen Seiten unterzubringen. Diese Relay-Attacke bindet das Captcha einer Fremden Seite auf einer eigenen Seite ein wo Besucher das entschlüsseln des Captchas übernehmen. Es gibt keine Möglichkeit diesen Angriff wirkungsvoll zu verhindern.

Geschrieben von apoc

27. September 2008 @ 17:20

Posted in web

Tagged with , , ,

2 Responses to 'Captchas'

Subscribe to comments with RSS or TrackBack to 'Captchas'.

  1. gute kleine einfuehrung ins thema :D
    wuerd mich uber mehr technischen teifgang freuen
    aber bist ja drann

    nks

    4 Okt 08 at 02:18

  2. Ist eigentlich schon für den vorliegenden Artikel geplant gewesen, aber mit dem Captcha mit dem ich mich atm. beschäftige komme ich nicht wirklich weiter. Vll. schreib ich mal nen bissle Code zu der Relay-Attacke.

    apoc

    4 Okt 08 at 20:22

Leave a Reply