Captcha

Aus besserwiki.de

Ein Captcha ['kæptʃə] (der oder das, 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[programm], 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 dem Schutz der Betreiber-Ressourcen, nicht dem Schutz des Benutzers oder dessen Daten. Im Unterschied zum klassischen Turing-Test, bei dem Menschen die Frage klären möchten, ob sie mit einem Mensch oder einer Maschine interagieren, dienen Captchas dazu, dass eine Maschine diese Frage klären soll.

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.

Captcha, das auf der Verzerrung von Buchstaben (hier: „smwm“) in Bildern basiert
Bei diesem Captcha ist zunächst die Zeichenfolge vor dem Hintergrund zu erkennen, dann die Aufgabe zu verstehen und diese mit der Eingabe „25“ zu lösen
Captcha, bei dem das Erlesen durch den Hintergrund erschwert wird. (Hier: MV52RQ)

Dieses Verfahren zur Benutzeridentifizierung wurde vielfach kritisiert, insbesondere von Menschen mit Behinderungen, aber auch von anderen Personen, die das Gefühl haben, dass ihre tägliche Arbeit durch verzerrte und schwer lesbare Wörter verlangsamt wird. Eine durchschnittliche Person braucht etwa 10 Sekunden, um ein typisches CAPTCHA zu lösen.

Geschichte

Seit den Anfängen des Internets gibt es Benutzer, die Text für Computer unlesbar machen wollen. Die ersten dieser Art waren Hacker, die in Internetforen, von denen sie annahmen, dass sie automatisch auf Schlüsselwörter überwacht würden, über sensible Themen berichteten. Um solche Filter zu umgehen, ersetzten sie ein Wort durch ähnlich aussehende Zeichen. HELLO konnte zu |-|3|_|_() oder )-(3££0 werden, sowie zu zahlreichen anderen Varianten, so dass ein Filter unmöglich alle erkennen konnte. Dies wurde später als Leetspeak bekannt.

Eine der frühesten kommerziellen Anwendungen von CAPTCHAs war der Gausebeck-Levchin-Test. Im Jahr 2000 begann idrive.com, seine Anmeldeseite mit einem CAPTCHA zu schützen und bereitete sich darauf vor, ein Patent auf diese scheinbar neuartige Technik anzumelden. Im Jahr 2001 verwendete PayPal solche Tests als Teil einer Strategie zur Betrugsprävention, bei der sie Menschen aufforderten, "verzerrten Text, den Programme nur schwer erkennen können, erneut einzugeben". Der Mitbegründer und CTO von PayPal, Max Levchin, half bei der Kommerzialisierung dieser frühen Anwendung.

Eine beliebte Anwendung der CAPTCHA-Technologie, reCAPTCHA, wurde 2009 von Google übernommen. Google hat reCAPTCHA und die CAPTCHA-Technologie nicht nur zur Verhinderung von Bot-Betrug für seine Nutzer eingesetzt, sondern auch zur Digitalisierung der Archive der New York Times und der Bücher von Google Books im Jahr 2011.

Ansprüche auf Erfinderschaft

Zwei Teams haben behauptet, die ersten Erfinder der heute im Internet weit verbreiteten CAPTCHAs zu sein. Das erste Team, bestehend aus Mark D. Lillibridge, Martín Abadi, Krishna Bharat und Andrei Broder, verwendete CAPTCHAs 1997 bei AltaVista, um Bots daran zu hindern, URLs (Uniform Resource Locator) zu ihrer Websuchmaschine hinzuzufügen. Auf der Suche nach einer Möglichkeit, ihre Bilder resistent gegen OCR-Angriffe (Optical Character Recognition) zu machen, sah sich das Team das Handbuch ihres Brother-Scanners an, das Empfehlungen zur Verbesserung der OCR-Ergebnisse enthielt (ähnliche Schriftarten, einfarbige Hintergründe usw.). Das Team erstellte Rätsel, indem es versuchte zu simulieren, was laut Handbuch zu einer schlechten OCR führen würde.

Das zweite Team, das für sich in Anspruch nimmt, als erstes CAPTCHAs erfunden zu haben, Luis von Ahn, Manuel Blum, Nicholas J. Hopper und John Langford, beschrieb CAPTCHAs erstmals in einer Veröffentlichung aus dem Jahr 2003 und erhielt daraufhin viel Aufmerksamkeit in der populären Presse. Ihr Begriff CAPTCHA umfasst jedes Programm, das Menschen von Computern unterscheiden kann.

Die Kontroverse um die Erfinderschaft wurde durch die Existenz einer Patentanmeldung mit Prioritätsdatum 1997 von Eran Reshef, Gili Raanan und Eilon Solan (zweite Gruppe), die bei Sanctum an der Application Security Firewall arbeiteten, gelöst. In ihrer Patentanmeldung heißt es: "Die Erfindung basiert auf der Nutzung des menschlichen Vorteils bei der Anwendung sensorischer und kognitiver Fähigkeiten, um einfache Probleme zu lösen, die sich für Computersoftware als äußerst schwierig erweisen. Solche Fähigkeiten beinhalten, sind aber nicht beschränkt auf die Verarbeitung von sensorischen Informationen, wie z.B. die Identifizierung von Objekten und Buchstaben in einer verrauschten grafischen Umgebung. Lillibridge, Abadi, Bharat und Broder (erste Gruppe) veröffentlichten ihr Patent im Jahr 1998. Beide Patente sind anderen Veröffentlichungen um einige Jahre voraus. Obwohl sie den Begriff CAPTCHA nicht verwenden, beschreiben sie die Ideen im Detail und stellen die heute im Web verwendeten grafischen CAPTCHAs genau dar.

Merkmale

CAPTCHAs sind per definitionem vollautomatisch und erfordern nur wenig menschliche Wartung oder Eingriffe bei der Verwaltung, was Vorteile bei den Kosten und der Zuverlässigkeit bringt.

Der Algorithmus, der zur Erstellung des CAPTCHA verwendet wird, muss veröffentlicht werden, obwohl er durch ein Patent geschützt sein kann. Dies geschieht, um zu zeigen, dass das Brechen des Algorithmus die Lösung eines schwierigen Problems im Bereich der künstlichen Intelligenz (KI) erfordert und nicht nur die Entdeckung des (geheimen) Algorithmus, der durch Reverse Engineering oder andere Mittel erlangt werden könnte.

Moderne textbasierte CAPTCHAs sind so konzipiert, dass sie den gleichzeitigen Einsatz von drei separaten Fähigkeiten erfordern - invariante Erkennung, Segmentierung und Parsing -, um die Aufgabe korrekt und konsistent zu lösen.

  • Die invariante Erkennung bezieht sich auf die Fähigkeit, die große Anzahl von Variationen in den Buchstabenformen zu erkennen. Es gibt eine überwältigend große Anzahl von Versionen jedes Zeichens, die ein menschliches Gehirn erfolgreich erkennen kann. Für einen Computer gilt das nicht, und ihm beizubringen, all diese unterschiedlichen Formen zu erkennen, ist eine anspruchsvolle Aufgabe.
  • Die Segmentierung, d. h. die Fähigkeit, einen Buchstaben von einem anderen zu unterscheiden, wird bei CAPTCHAs ebenfalls erschwert, da die Zeichen dicht aneinander gedrängt sind und kein Leerraum dazwischen liegt.
  • Auch der Kontext ist entscheidend. Das CAPTCHA muss als Ganzes verstanden werden, um jedes Zeichen korrekt zu identifizieren. In einem Segment eines CAPTCHAs könnte ein Buchstabe beispielsweise wie ein "m" aussehen. Erst wenn man das ganze Wort im Zusammenhang betrachtet, wird klar, dass es sich um ein "u" und ein "n" handelt.

Jedes dieser Probleme stellt für einen Computer eine große Herausforderung dar, selbst wenn es für sich allein steht. Das gleichzeitige Vorhandensein aller drei Probleme macht CAPTCHAs so schwierig zu lösen.

Im Gegensatz zu Computern sind Menschen bei dieser Art von Aufgabe besonders gut. Während Segmentierung und Erkennung für einen Computer zwei separate Prozesse sind, die für das Verständnis eines Bildes notwendig sind, sind sie für einen Menschen Teil desselben Prozesses. Wenn eine Person zum Beispiel versteht, dass der erste Buchstabe eines CAPTCHA ein a ist, versteht sie auch, wo die Konturen dieses a sind und wo es mit den Konturen des nächsten Buchstabens verschmilzt. Außerdem ist das menschliche Gehirn in der Lage, dynamisch und kontextabhängig zu denken. Es ist in der Lage, mehrere Erklärungen aufrechtzuerhalten und dann diejenige auszuwählen, die die beste Erklärung für die gesamte Eingabe ist, basierend auf kontextuellen Hinweisen. Das bedeutet auch, dass es sich nicht von Buchstabenvariationen täuschen lässt.

Beziehung zur KI

CAPTCHAs werden zwar hauptsächlich aus Sicherheitsgründen eingesetzt, dienen aber auch als Benchmark-Aufgabe für Technologien der künstlichen Intelligenz. Einem Artikel von Ahn, Blum und Langford zufolge kann jedes Programm, das die von einem CAPTCHA generierten Tests besteht, zur Lösung eines schwierigen, ungelösten KI-Problems verwendet werden.

Sie argumentieren, dass die Verwendung schwerer KI-Probleme als Mittel zur Sicherheit zwei Vorteile hat. Entweder bleibt das Problem ungelöst und es bleibt eine zuverlässige Methode, um Menschen von Computern zu unterscheiden, oder das Problem wird gelöst und damit ein schwieriges KI-Problem gelöst. Im Fall der bild- und textbasierten CAPTCHAs wäre das Problem der Entwicklung einer KI, die komplexe Objekte in Szenen erkennen kann, gelöst, wenn eine KI in der Lage wäre, die Aufgabe akkurat zu lösen, ohne Schwachstellen in einem bestimmten CAPTCHA-Design auszunutzen.

Zugänglichkeit

Viele Websites verlangen bei der Erstellung eines Kontos die Eingabe eines CAPTCHAs, um Spam zu verhindern.

CAPTCHAs, die auf dem Lesen von Text - oder anderen visuellen Wahrnehmungsaufgaben - basieren, verhindern, dass blinde oder sehbehinderte Benutzer auf die geschützte Ressource zugreifen können. CAPTCHAs müssen jedoch nicht zwangsläufig visuell sein. Jedes schwierige Problem der künstlichen Intelligenz, wie z. B. Spracherkennung, kann als Grundlage für ein CAPTCHA verwendet werden. Einige CAPTCHA-Implementierungen erlauben es den Nutzern, sich für ein Audio-CAPTCHA zu entscheiden, obwohl in einer Veröffentlichung aus dem Jahr 2011 eine Technik vorgestellt wurde, mit der die damals beliebten Verfahren umgangen werden können.

Für nicht sehende Benutzer (z. B. blinde Benutzer oder farbenblinde Personen bei einem Farbverwendungstest) stellen visuelle CAPTCHAs ernsthafte Probleme dar. Da CAPTCHAs so konzipiert sind, dass sie von Maschinen nicht gelesen werden können, können gängige Hilfsmittel wie Bildschirmlesegeräte sie nicht interpretieren. Da Websites CAPTCHAs als Teil der Erstregistrierung oder sogar bei jeder Anmeldung verwenden können, kann diese Herausforderung den Zugang vollständig blockieren. In bestimmten Gerichtsbarkeiten könnten Website-Besitzer Ziel von Rechtsstreitigkeiten werden, wenn sie CAPTCHAs verwenden, die bestimmte Menschen mit Behinderungen diskriminieren. So kann ein CAPTCHA beispielsweise dazu führen, dass eine Website in den Vereinigten Staaten nicht mit Abschnitt 508 vereinbar ist. In anderen Fällen können Menschen mit Sehschwierigkeiten ein Wort identifizieren, das ihnen vorgelesen wird.

Ein Audio-CAPTCHA ermöglicht zwar blinden Nutzern, den Text zu lesen, behindert aber immer noch diejenigen, die sowohl blind als auch taub sind. Nach Angaben von sense.org.uk sind etwa 4 % der Menschen über 60 im Vereinigten Königreich sowohl seh- als auch hörbehindert. Im Vereinigten Königreich gibt es etwa 23.000 Menschen mit schweren Seh- und Hörbehinderungen. Nach Angaben des National Technical Assistance Consortium for Children and Young Adults Who Are Deaf-Blind (NTAC) ist die Zahl der taubblinden Kinder in den USA im Zeitraum 2004 bis 2012 von 9.516 auf 10.471 gestiegen. Die Gallaudet University zitiert Schätzungen aus den Jahren 1980 bis 2007, die von mehr als 35.000 vollständig taubblinden Erwachsenen in den USA ausgehen. Die Schätzungen der taubblinden Bevölkerung hängen stark vom Grad der Beeinträchtigung ab, der für die Definition verwendet wird.

Die Verwendung von CAPTCHA schließt somit einen kleinen Prozentsatz von Nutzern von der Nutzung bedeutender Teilbereiche gängiger webbasierter Dienste wie PayPal, Gmail, Orkut, Yahoo!, vieler Foren- und Weblog-Systeme usw. aus.

Neue Generationen von grafischen CAPTCHAs, die entwickelt wurden, um ausgefeilte Erkennungssoftware zu überwinden, können selbst für perfekt sehende Personen sehr schwer oder unmöglich zu lesen sein.

Eine Methode zur Verbesserung von CAPTCHA, die die Arbeit damit erleichtert, wurde von ProtectWebForm vorgeschlagen und "Smart CAPTCHA" genannt. Entwicklern wird empfohlen, CAPTCHA mit JavaScript zu kombinieren. Da es für die meisten Bots schwierig ist, JavaScript zu analysieren und auszuführen, wurde eine kombinierte Methode vorgeschlagen, die die CAPTCHA-Felder ausfüllt und sowohl das Bild als auch das Feld vor menschlichen Augen verbirgt.

Eine alternative Methode besteht darin, dem Benutzer eine einfache mathematische Gleichung zu zeigen und ihn aufzufordern, die Lösung zur Überprüfung einzugeben. Diese sind zwar mit Hilfe von Software viel leichter zu umgehen, eignen sich aber für Szenarien, in denen grafische Bilder nicht geeignet sind, und bieten blinden Nutzern einen viel höheren Grad an Zugänglichkeit als die bildbasierten CAPTCHAs. Diese werden manchmal auch als MAPTCHAs (M = "mathematisch") bezeichnet. Diese können jedoch für Benutzer mit kognitiven Störungen schwierig sein.

Andere Arten von Herausforderungen, z. B. solche, bei denen man die Bedeutung eines Textes verstehen muss (z. B. ein Logikrätsel, eine Quizfrage oder eine Anleitung zur Erstellung eines Passworts), können ebenfalls als CAPTCHA verwendet werden. Auch hier gibt es nur wenige Untersuchungen über ihre Widerstandsfähigkeit gegen Gegenmaßnahmen.

Umgehung

Es gibt einige Ansätze, um CAPTCHAs zu umgehen: die Verwendung billiger menschlicher Arbeitskräfte, um sie zu erkennen, das Ausnutzen von Fehlern in der Implementierung, die es dem Angreifer ermöglichen, das CAPTCHA vollständig zu umgehen, und schließlich die Verwendung von maschinellem Lernen, um einen automatischen Löser zu entwickeln. Laut Shuman Ghosemajumder, dem ehemaligen "Klickbetrugs-Zar" von Google, gibt es zahlreiche Dienste, die CAPTCHAs automatisch lösen.

Auf maschinellem Lernen basierende Angriffe

In den ersten Versionen gab es keine systematische Methodik für den Entwurf oder die Bewertung von CAPTCHAs. Infolgedessen gab es viele Fälle, in denen CAPTCHAs eine feste Länge hatten und daher automatisierte Aufgaben konstruiert werden konnten, die erfolgreich Vermutungen darüber anstellten, wo die Segmentierung stattfinden sollte. Andere frühe CAPTCHAs enthielten nur eine begrenzte Anzahl von Wörtern, wodurch der Test viel einfacher zu manipulieren war. Wieder andere machten den Fehler, sich zu sehr auf die Hintergrundverwirrung im Bild zu verlassen. In jedem Fall wurden Algorithmen entwickelt, die die Aufgabe erfolgreich lösen konnten, indem sie diese Designfehler ausnutzten. Diese Methoden erwiesen sich jedoch als brüchig und konnten durch geringfügige Änderungen des CAPTCHAs leicht vereitelt werden. Moderne CAPTCHAs wie reCAPTCHA verlassen sich nicht mehr nur auf feste Muster, sondern zeigen stattdessen Variationen von Zeichen, die oft zusammengeschoben werden, was eine Segmentierung fast unmöglich macht. Diese neuesten Versionen sind sehr viel erfolgreicher bei der Abwehr von automatisierten Aufgaben.

Ein Beispiel für eine reCAPTCHA-Aufgabe aus dem Jahr 2007, die die Worte "following finding" enthält. Die Wellenform und der horizontale Strich wurden hinzugefügt, um die Schwierigkeit zu erhöhen, das CAPTCHA mit einem Computerprogramm zu knacken.
Ein CAPTCHA hat normalerweise ein Textfeld direkt darunter, in das der Benutzer den angezeigten Text eingeben soll. In diesem Fall: "sclt ..was here".

Im Oktober 2013 behauptete das Unternehmen für künstliche Intelligenz Vicarious, einen generischen CAPTCHA-Lösungsalgorithmus entwickelt zu haben, der moderne CAPTCHAs mit einer Zeichenerkennungsrate von bis zu 90 % lösen kann. Luis von Ahn, ein Pionier der frühen CAPTCHAs und Gründer von reCAPTCHA, äußerte sich jedoch skeptisch und erklärte: "Es ist schwer für mich, beeindruckt zu sein, da ich alle paar Monate so etwas sehe." Er wies darauf hin, dass seit 2003 bereits 50 ähnliche Behauptungen wie die von Vicarious aufgestellt wurden.

Im August 2014 stellten Bursztein et al. auf der Usenix WoOT-Konferenz den ersten generischen CAPTCHA-Lösungsalgorithmus auf der Grundlage von Reinforcement Learning vor und demonstrierten seine Effizienz gegenüber vielen gängigen CAPTCHA-Schemata. Sie kamen zu dem Schluss, dass auf Textverzerrung basierende CAPTCHA-Schemata in Zukunft als unsicher angesehen werden sollten.

Im Oktober 2018 präsentierten Ye et al. auf der ACM CCS'18-Konferenz einen auf Deep Learning basierenden Angriff, der alle 11 Text-Captcha-Schemata, die von den Top-50 populären Websites im Jahr 2018 verwendet wurden, mit einer hohen Erfolgsquote erfolgreich lösen konnte. Ihre Arbeit zeigt, dass ein effektiver CAPTCHA-Löser mit nur 500 echten CAPTCHAs trainiert werden kann, was zeigt, dass es möglich ist, schnell einen Angriff auf ein neues Text-CAPTCHA-Schema zu starten.

Billige oder unwissende menschliche Arbeit

Es ist möglich, CAPTCHAs zu unterwandern, indem man sie an einen Ausbeuterbetrieb menschlicher Bediener weiterleitet, die mit der Entschlüsselung von CAPTCHAs beschäftigt sind. In einem Papier einer W3C-Arbeitsgruppe aus dem Jahr 2005 heißt es, dass ein solcher Operator Hunderte von Daten pro Stunde überprüfen kann. Im Jahr 2010 führte die Universität von Kalifornien in San Diego eine groß angelegte Studie über CAPTCHA-Farmen durch und fand heraus, dass der Einzelhandelspreis für das Lösen von einer Million CAPTCHAs bei nur 1.000 Dollar lag.

Eine andere beschriebene Technik besteht darin, ein Skript zu verwenden, um das CAPTCHA der Zielsite als CAPTCHA auf eine dem Angreifer gehörende Site umzuposten, die von ahnungslosen Menschen besucht und innerhalb kurzer Zeit korrekt gelöst wird, damit das Skript es verwenden kann. Diese Technik dürfte für die meisten Angreifer aufgrund der Kosten für die Gewinnung einer ausreichenden Zahl von Nutzern und den Betrieb einer beliebten Website wirtschaftlich nicht machbar sein.

Auslagerung an bezahlte Dienste

Es gibt mehrere Internet-Unternehmen wie 2Captcha und DeathByCaptcha, die von Menschen und Maschinen unterstützte CAPTCHA-Lösungsdienste für nur 0,50 US-Dollar pro 1000 gelöste CAPTCHAs anbieten. Diese Dienste bieten APIs und Bibliotheken an, die es den Benutzern ermöglichen, die Umgehung von CAPTCHAs in die Tools zu integrieren, die CAPTCHAs ursprünglich blockieren sollten.

Unsichere Implementierung

Howard Yeend hat zwei Implementierungsprobleme bei schlecht konzipierten CAPTCHA-Systemen festgestellt:

  • Einige CAPTCHA-Schutzsysteme können ohne OCR umgangen werden, indem einfach die Sitzungs-ID eines bekannten CAPTCHA-Bildes wiederverwendet wird
  • CAPTCHAs, die auf gemeinsam genutzten Servern liegen, stellen ebenfalls ein Problem dar; eine Sicherheitslücke auf einem anderen virtuellen Host kann die Website des CAPTCHA-Ausstellers angreifbar machen.

Wenn ein Teil der Software, die das CAPTCHA generiert, clientseitig ist (die Validierung erfolgt auf einem Server, aber der Text, den der Benutzer identifizieren muss, wird auf der Client-Seite gerendert), können Benutzer den Client so verändern, dass der nicht gerenderte Text angezeigt wird. Einige CAPTCHA-Systeme verwenden MD5-Hashes, die clientseitig gespeichert werden, wodurch das CAPTCHA anfällig für einen Brute-Force-Angriff sein kann.

Bemerkenswerte Angriffe

Zu den bemerkenswerten Angriffen auf verschiedene CAPTCHA-Schemata gehören:

  • Mori et al. veröffentlichten in der IEEE CVPR'03 einen Artikel, in dem sie eine Methode zur Umgehung eines der beliebtesten CAPTCHAs, EZ-Gimpy, vorstellten, die mit einer Genauigkeit von 92 % getestet wurde. Mit derselben Methode konnte auch das komplexere und weniger weit verbreitete Gimpy-Programm in 33 % der Fälle überwunden werden. Es ist jedoch ungewiss, ob dieser Algorithmus in der Praxis eingesetzt wird.
  • PWNtcha hat erhebliche Fortschritte bei der Umgehung häufig verwendeter CAPTCHAs gemacht, was zu einer allgemeinen Umstellung auf komplexere CAPTCHAs beigetragen hat.
  • Podec, ein von der Sicherheitsfirma Kaspersky entdeckter Trojaner, leitet CAPTCHA-Anfragen an einen menschlichen Online-Übersetzungsdienst weiter, der das Bild in Text umwandelt und so das System täuscht. Podec zielt auf mobile Android-Geräte ab.

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 das Lösen von Captchas als interaktives Striptease-Spiel tarnte.

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.

Alternative CAPTCHAs-Schemata

Mit dem Nachweis, dass textverzerrungsbasierte CAPTCHAs für auf maschinellem Lernen basierende Angriffe anfällig sind, haben einige Forscher Alternativen vorgeschlagen, darunter CAPTCHAs mit Bilderkennung, bei denen die Benutzer einfache Objekte in den dargestellten Bildern identifizieren müssen. Das Argument für diese Systeme ist, dass Aufgaben wie die Objekterkennung in der Regel komplexer sind als die Texterkennung und daher widerstandsfähiger gegen Angriffe durch maschinelles Lernen sein sollten. Hier sind einige bemerkenswerte alternative CAPTCHA-Schemata:

  • Chew et al. veröffentlichten ihre Arbeit auf der 7th International Information Security Conference, ISC'04, und schlugen drei verschiedene Versionen von Bilderkennungs-CAPTCHAs vor, die sie anhand von Nutzerstudien validierten. Es wird vorgeschlagen, dass eine der Versionen, das anomale CAPTCHA, am besten ist, da 100 % der menschlichen Benutzer in der Lage sind, ein anomales CAPTCHA mit mindestens 90 % Wahrscheinlichkeit in 42 Sekunden zu bestehen.
  • Datta et al. veröffentlichten auf der ACM Multimedia '05 Konferenz eine Arbeit mit dem Namen IMAGINATION (IMAge Generation for INternet AuthenticaTION), in der sie einen systematischen Weg zur Bilderkennung von CAPTCHAs vorschlagen. Die Bilder sind so verzerrt, dass moderne Bilderkennungsmethoden (die potenzielle Angriffstechnologien sind) sie nicht erkennen können.
  • Microsoft (Jeremy Elson, John R. Douceur, Jon Howell und Jared Saul) behauptet, Animal Species Image Recognition for Restricting Access (ASIRRA) entwickelt zu haben, das die Benutzer auffordert, Katzen von Hunden zu unterscheiden. Microsoft hatte eine Betaversion davon für Websites zur Verfügung gestellt. Sie behaupten: "Asirra ist für die Benutzer einfach; es kann von Menschen in 99,6 % der Fälle in weniger als 30 Sekunden gelöst werden. Anekdotisch betrachtet, schienen die Benutzer die Verwendung von Asirra viel angenehmer zu finden als ein textbasiertes CAPTCHA". Diese Lösung wurde 2007 in einem Beitrag zu den Proceedings of 14th ACM Conference on Computer and Communications Security (CCS) beschrieben. Dieses Projekt wurde jedoch im Oktober 2014 eingestellt und ist nicht mehr verfügbar.

Siehe auch

  • Verteidigungsstrategie (Computertechnik)
  • NuCaptcha
  • Proof-of-Work-System
  • reCAPTCHA

Weitere Referenzen

  • von Ahn, L; M. Blum und J. Langford. (2004) "Menschen und Computer auseinanderhalten (automatisch)". Communications of the ACM, 47(2):57-60.

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 verzichten auf Security through obscurity.
Captcha mit zusätzlichen Zeichen im Hintergrund