Ein Captcha [‚kæptʃə] (auch CAPTCHA; engl. Completely Automated Public Turing test to tell Computers and Humans Apart „vollautomatischer öffentlicher Turing-Test zur Unterscheidung von Computern und Menschen“) wird verwendet, um festzustellen, ob ein Mensch oder eine Maschine (Roboter, kurz [Bot]) einbezogen ist. In der Regel dient dies zur Prüfung, von wem Eingaben in Internetformulare erfolgt sind, weil Roboter hier oft missbräuchlich eingesetzt werden. Captchas dienen also der Sicherheit.
Der Begriff Captcha wurde zum ersten Mal im Jahr 2000 von Luis von Ahn, Manuel Blum und Nicholas J. Hopper an der Carnegie Mellon University und von John Langford von IBM verwendet und ist ein Homophon des englischen Wortes capture (einfangen, erfassen). Gelegentlich werden Verfahren zur Unterscheidung von Robotern und Menschen auch als HIP (engl. Human Interaction Proof) bezeichnet.
Erklärung
Captchas sind meist Challenge-Response-Tests, bei denen der Befragte eine Aufgabe (Challenge) lösen muss und das Ergebnis (Response) zurückschickt. In Captchas sind die gestellten Aufgaben idealerweise so, dass sie für Menschen einfach zu lösen sind, für Computer hingegen sehr schwierig. Beispiel dafür ist ein Text, der durch Bildfilter verzerrt wurde. Computer benötigen Mustererkennungs-Algorithmen, um derartige Bilder zu verarbeiten, die aufwendig zu programmieren sind und hohe Anforderung an die Hardware stellen. Neben grafischen Captchas werden mittlerweile auch Audio-Captchas oder Video-Captchas eingesetzt. Bei Asirra von Microsoft muss der Benutzer Tiere auf Fotos erkennen.
Captchas haben entsprechend ihrer Bezeichnung folgende Eigenschaften:
- Frage und Antwort werden bei jedem Zugangsversuch vollautomatisch per Zufallsgenerator und unter Einhaltung bestimmter Regeln generiert. Es wird also kein von Menschen vorgetragener Katalog mit Fragen und Antworten verwendet, da dessen begrenzter Wertebereich deutlich schneller zu Wiederholungen führen und damit einen Angriff erleichtern würde.
- Der verwendete Algorithmus ist veröffentlicht, damit Fachleute die Sicherheit des Systems beurteilen können. Captchas folgen damit Kerckhoffs’ Prinzip und vermeiden Security through obscurity.
Nachteile
Es werden meist bildbasierte Rätsel verwendet; diese sind jedoch nicht barrierefrei, da sie schwer von sehbehinderten Menschen erkannt werden. Verschiedene Anbieter verwenden daher zusätzlich akustische Captchas, um die Zugänglichkeit zu erhöhen. Taubblinde und Benutzer rein textbasierter Browser bleiben jedoch auch dadurch ausgeschlossen. Für Letztere würde sich jedoch eine weitere Methode eignen, welche textlich ein Wort abfragt, wie beispielsweise: „Wie nennt man ein motorbetriebenes, vierrädriges Fahrzeug“.
Die Antwort wäre in diesem Fall „Auto“. Solche Frage-Antwortlisten müssten aber sehr schnell erweitert oder ständig umgeschrieben werden, da man einem Spambot solche Listen beibringen könnte. Außerdem stellen sie dann eine Barriere für Nicht-Muttersprachige oder intellektuell Benachteiligte dar.
Grundsätzlich ist jedes schwierige Problem der Künstlichen Intelligenz geeignet, für ein Captcha verwendet zu werden. Die technische Eskalation bewirkt, dass die Captchas auch für den Menschen immer schwieriger zu lösen werden und daher langfristig keine Lösung darstellen.
Captchas sind unter Benutzerfreundlichkeits-Gesichtspunkten auch deshalb problematisch, da sie Hürden darstellen, die teilweise zu einem erheblichen Mehraufwand für den Nutzer bei der Zielerreichung führen. Zudem erschließt sich der Zweck eines Captchas vielen Betroffenen nicht intuitiv, was zu Irritationen über eine vermeintlich sinnlose Funktion führt. Aus diesen Problemquellen resultieren häufig Nutzungsabbrüche, Fehlermeldungen und Unzufriedenheit beim Nutzer. Einer aktuellen Studie zufolge verbringen Internet-Nutzer weltweit insgesamt 150.000 Stunden pro Tag mit der Lösung von Captchas.
Anwendungsgebiete
Mögliche Anwendungsgebiete sind Dienste, bei denen Bots den Dienst manipulieren oder missbrauchen können, wie etwa Online-Umfragen, Gästebücher, Registrieren von E-Mail-Adressen (von denen Spam gesendet werden kann) oder die Vermeidung von Spam durch Verschleierung der E-Mail-Adresse. Außerdem werden Captchas auch in Verbindung mit einer indizierten TAN-Liste zur Abwehr von Man-in-the-middle-Angriffen bei Online-Banking-Anwendungen verwendet.
Einen sekundären Nutzen aus der Lösung von Captchas erzielt Google Inc. mit dem Dienst reCAPTCHA für sein Projekt Google Bücher. Nicht erkannte Textstellen beim Google-Bücher-Scan-Projekt werden als einzelne Wörter den Internet-Nutzern als Captcha angezeigt. Neben dem gescannten Wort wird noch ein echter Captcha angezeigt. Beide Wörter werden vom Nutzer aufgelöst.
Das echte Captcha-Wort wird für die eigentliche Sicherheitsabfrage benutzt. Die Erkennung des gescannten Wortes wird gespeichert. Bei mehrfach gleicher Buchstabierung des gescannten Wortes bei unterschiedlichen Captcha-Vorgängen wird das Wort als richtig erkannt abgespeichert und wird so in das Google-Buch-Scan-Projekt übernommen.
Umgehung von Captchas
Lösen durch Maschinen
Mit zunehmender Verbreitung von Captcha-geschützten Webseiten begann ein Wettrüsten zwischen den Herstellern von Captchas und den Entwicklern maschineller Lösungen, so dass bald Programme entwickelt wurden, um den Schutz von Captchas zu umgehen. Viele mittlerweile ältere Implementierungen sind heute mit relativ geringem Aufwand auch für Maschinen lösbar. Für verbreitete Implementierungen, wie die in der phpBB (Software zur Bereitstellung eines Internetforums) verwendete, existieren bereits Spambots, die die Captchas lesen und damit diesen Schutz umgehen können.
Ein weiteres Beispiel ist das Umgehen von Captchas durch Spammer beim automatischen Anlegen von Google-Mail-Konten mit einer Erkennungsrate von 20 bis 30 Prozent. In der originalen Version der Captchas von SchülerVZ gelang es auch, diese zu umgehen und somit ein Massenkopieren von Profildaten in die Wege zu leiten. Ein automatisierter Bot, welcher lediglich aus einer einfachen Kombination eines Perl-Skripts und der Ajax-Programmierung bestand, konnte durchschnittlich 70 % der Captchas lösen. Wie ein Versuch zeigt, existieren Algorithmen, die Captchas beispielsweise von Googles weit verbreitetem reCAPTCHA zu weit über 90 % richtig lösen, und somit eine höhere Erkennungsrate als Menschen aufweisen.
Lösen durch Menschen
Unwissentlich
Eine technisch einfache Möglichkeit, einen Captcha-Mechanismus zu umgehen, ist, eine Erkennungsaufgabe an unwissende Nutzer zu delegieren. Ein Spammer richtete beispielsweise einen Honeypot ein, um von den Besuchern Captchas lösen zu lassen, die vom Ziel des Spammers übernommen wurden. 2007 enttarnten Trend Micro und Panda Security einen Trojaner, der gelöste Captchas mit Bildern einer strippenden Dame belohnte.
Wissentlich
Mittels kollaborativer Zusammenarbeit, auf sogenannten Captcha Exchange Servern, arbeiteten Ende der ersten Dekade des 21. Jahrhunderts Gruppen daran, sich gegenseitig Lösungen auf Vorrat anzulegen. Auf Grund technischer Entwicklungen und der Etablierung der Paid Services konnte sich die Idee kaum durchsetzen. In der dritten Welt gibt es einige Anbieter, die Captchas in Sweatshops lösen lassen.
Quelle: Wikipedia (https://de.wikipedia.org/wiki/Captcha)