Wie Cyberkriminelle CAPTCHAs umgehen

F5-Ökosystem | 12. Juli 2017


CAPTCHA (Completely Automated Public Turing Test to Tell Computers and Humans Apart) wurde ursprünglich entwickelt, um zu verhindern, dass Bots, Schadsoftware und künstliche Intelligenz (KI) mit einer Webseite interagieren. In den 90er-Jahren ging es dabei darum, Spam-Bots abzuwehren. Heutzutage setzen Unternehmen CAPTCHA ein, um gefährlichere automatisierte Angriffe wie Credential Stuffing zu verhindern.

Doch fast unmittelbar nach der Einführung von CAPTCHA entwickelten Cyberkriminelle wirksame Methoden, um es zu umgehen. Die Verteidiger reagierten mit „gehärteten“ CAPTCHAs, doch das Ergebnis bleibt dasselbe: Der Test, der automatisierte Zugriffe verhindern soll, wird mithilfe von Automatisierung umgangen.

CAPTCHAs können auf verschiedene Weise umgangen werden. Eine gängige Methode besteht darin, einen CAPTCHA-Lösungsdienst zu nutzen, der kostengünstige menschliche Arbeitskräfte in Entwicklungsländern einsetzt, um CAPTCHA-Bilder zu lösen. Cyberkriminelle abonnieren einen solchen Dienst, dessen CAPTCHA-Lösungen über APIs direkt in ihre Automatisierungstools einfließen und die Antworten auf der Zielwebsite eintragen. Diese dubiosen Anbieter sind so weit verbreitet, dass sich viele davon mit einer kurzen Google-Suche finden lassen, darunter:

  • DeathbyCAPTCHA
  • 2Captcha
  • Kolotibablo
  • ProTypers
  • Antigate

In diesem Artikel wird anhand von 2Captcha gezeigt, wie Angreifer die Lösung zur Durchführung von Credential-Stuffing-Angriffen einsetzen.

2Captcha

Beim Aufrufen der Website 2Captcha.com wird dem Besucher das unten stehende Bild angezeigt. Darin wird gefragt, ob er 1) für 2Captcha arbeiten oder 2) 2Captcha als Dienstleistung erwerben möchte.

Wie Cyberkriminelle CAPTCHAs umgehen

Option 1 – Für 2Captcha arbeiten

Um für 2Captcha zu arbeiten, registrieren Sie einfach ein Konto und geben Sie dabei eine E-Mail-Adresse sowie ein PayPal-Konto für die Auszahlung an. Bei einem Test wurde das Konto innerhalb weniger Minuten bestätigt.

Neue Arbeitskräfte müssen einmalig einen Schulungskurs absolvieren, in dem sie lernen, CAPTCHAs schnell zu lösen. Außerdem erhalten sie Tipps, etwa dazu, wann die Groß- und Kleinschreibung relevant ist und wann nicht. Nach erfolgreichem Abschluss der Schulung mit ausreichender Genauigkeit können sie anfangen, Geld zu verdienen.

Wie Cyberkriminelle CAPTCHAs umgehen

Nach der Auswahl von „Arbeit beginnen“ gelangt die Arbeitskraft zum oben abgebildeten Arbeitsbereich. Dort wird ihr ein CAPTCHA angezeigt und sie wird aufgefordert, eine Lösung einzugeben. Sobald das CAPTCHA korrekt gelöst wurde, wird Geld in eine elektronische „Geldbörse“ eingezahlt, und die Arbeitskraft kann jederzeit eine Auszahlung beantragen. Die Zahl der im Arbeitsbereich angezeigten CAPTCHAs scheint unbegrenzt zu sein, was auf eine stetige Nachfrage nach diesem Dienst hindeutet.

Wie Cyberkriminelle CAPTCHAs umgehen

2Captcha-Mitarbeiter werden ähnlich wie Uber-Fahrer durch Kundenbewertungen dazu motiviert, korrekte Lösungen einzureichen beziehungsweise einen hervorragenden Service zu bieten. 2Captcha-Kunden bewerten die Genauigkeit der erhaltenen CAPTCHA-Lösungen. Fällt die Bewertung eines 2Captcha-Mitarbeiters unter einen bestimmten Schwellenwert, wird er von der Plattform ausgeschlossen. Mitarbeiter mit den höchsten Bewertungen werden hingegen in Zeiten geringer Nachfrage belohnt, indem sie bei der Verteilung von CAPTCHAs bevorzugt werden.

Option 2 – 2Captcha als Dienstleistung

Um 2Captcha als Dienst zu nutzen, integriert ein Kunde (d. h. ein Angreifer) die 2Captcha-API in seinen Angriff und schafft so eine digitale Lieferkette, die automatisch CAPTCHA-Aufgaben von der Zielwebsite übermittelt und Lösungen empfängt, die anschließend auf der Zielwebsite eingegeben werden.

2Captcha stellt praktischerweise Beispielskripte zur Verfügung, mit denen sich API-Aufrufe in verschiedenen Programmiersprachen wie C#, JavaScript, PHP und Python generieren lassen. Der in Python geschriebene Beispielcode ist nachfolgend wiedergegeben:

Wie Cyberkriminelle CAPTCHAs umgehen

Integration von 2CAPTCHA in einen automatisierten Angriff

Wie würde ein Angreifer 2Captcha bei einem Credential-Stuffing-Angriff einsetzen? Das folgende Diagramm zeigt, wie die verschiedenen Akteure bei der Umgehung eines CAPTCHAs zusammenwirken:

Wie Cyberkriminelle CAPTCHAs umgehen

Technischer Ablauf:

  1. Der Angreifer ruft den Quellcode des CAPTCHA-iFrames sowie die URL ab, über die das CAPTCHA-Bild auf der Zielwebsite eingebettet wird, und speichert beides lokal.
  2. Der Angreifer fordert auf der 2Captcha-Website ein API-Token an
  3. Der Angreifer sendet das CAPTCHA per HTTP POST an den 2Captcha-Dienst und erhält eine Captcha-ID. Dabei handelt es sich um eine numerische ID, die dem an 2Captcha übermittelten CAPTCHA-Bild zugeordnet ist. Die ID wird in Schritt 5 für eine API-GET-Anfrage an 2Captcha verwendet, um das gelöste CAPTCHA abzurufen.
  4. 2Captcha weist das CAPTCHA einem Mitarbeiter zu, der es löst und die Lösung anschließend an 2Captcha übermittelt.
  5. Der Angreifer programmiert ein Skript, das 2Captcha mithilfe der CAPTCHA-ID abfragt (alle 5 Sekunden, bis das CAPTCHA gelöst ist). Anschließend sendet 2Captcha das gelöste CAPTCHA. Wird noch an der Lösung gearbeitet, erhält der Angreifer von 2Captcha eine Antwort mit dem Hinweis „CAPTCHA_NOT_READY“, und das Programm versucht es 5 Sekunden später erneut.
  6. Der Angreifer sendet eine Anmeldeanfrage an die Zielwebsite, wobei die Felder ausgefüllt sind (d. h. mit einem Satz von Anmeldedaten aus einer Liste gestohlener Zugangsdaten), und übermittelt zugleich die CAPTCHA-Lösung.
  7. Der Angreifer wiederholt diesen Vorgang für jedes CAPTCHA-Bild.

In Kombination mit Webtest-Frameworks wie Selenium oder PhantomJS kann ein Angreifer den Anschein erwecken, auf menschenähnliche Weise mit der Zielwebsite zu interagieren. Dadurch kann er viele bestehende Sicherheitsmaßnahmen effektiv umgehen und einen Credential-Stuffing-Angriff starten.

Monetarisierung & kriminelles Ökosystem

Wie sieht bei einer solch eleganten Lösung das finanzielle Ökosystem aus, und wie verdienen die einzelnen Beteiligten daran?

Monetarisierung: CAPTCHA-Löser

Die Arbeit als CAPTCHA-Löser ist alles andere als lukrativ. Anhand der auf der Website von 2Captcha angegebenen Kennzahlen lässt sich die folgende Vergütung berechnen:

Unter der Annahme, dass das Lösen eines CAPTCHAs 6 Sekunden dauert, kann eine Arbeitskraft 10 CAPTCHAs pro Minute bzw. 600 CAPTCHAs pro Stunde bearbeiten. An einem 8-Stunden-Tag sind das 4.800 CAPTCHAs. Ausgehend von dem Verdienst während unseres Tests als Arbeitskraft für 2Captcha (etwa 0,0004 $ pro Lösung) entspricht dies 1,92 $ pro Tag.

Für Menschen in Industrieländern ist das Zeitverschwendung. Wer jedoch in einer Region lebt, in der ein paar Dollar pro Tag relativ viel bewirken können, kann mit CAPTCHA-Lösungsdiensten auf einfache Weise Geld verdienen.

Monetarisierung: Angreifer

Der Angreifer bezahlt den Drittanbieter 2Captcha für CAPTCHA-Lösungen in Paketen zu je 1.000 Stück. Angreifer bieten auf die Lösungen und zahlen dabei zwischen 1 und 5 US-Dollar pro Paket.

Viele Angreifer nutzen CAPTCHA-Lösungsdienste als Bestandteil eines umfassenderen Credential-Stuffing-Angriffs, wodurch sich die Kosten rechtfertigen. Angenommen, ein Angreifer startet beispielsweise einen Angriff, um eine Million Zugangsdaten von Pastebin auf einer Zielwebsite zu testen. In diesem Szenario muss der Angreifer für jeden Satz von Zugangsdaten ein CAPTCHA umgehen, was etwa 1.000 $ kosten würde. Bei einer Erfolgsquote von 1,5 % bei der Wiederverwendung von Zugangsdaten kann der Angreifer 15.000 Konten übernehmen, die sich allesamt monetarisieren lassen.

Monetarisierung: 2Captcha

2Captcha erhält vom Angreifer eine Vergütung pro 1.000 CAPTCHAs. Wie oben erwähnt, zahlen Kunden (d. h. Angreifer) zwischen 1 und 5 US-Dollar pro 1.000 CAPTCHAs. Dienste wie 2Captcha behalten dann einen Teil des Gebotspreises ein und zahlen den Rest an ihre menschlichen Arbeitskräfte aus. Da CAPTCHA-Lösungsdienste in großem Umfang eingesetzt werden, summieren sich die Gewinne beträchtlich. Selbst wenn 2Captcha nur 1 US-Dollar pro 1.000 gelöster CAPTCHAs erhält, erzielt der Dienst pro Paket einen Nettogewinn von mindestens 60 Cent. Die Betreiber dieser Websites leben häufig selbst in Entwicklungsländern, sodass die scheinbar geringen Einnahmen dort durchaus beträchtlich sind.

Was ist mit Googles Invisible reCAPTCHA?

Im März dieses Jahres veröffentlichte Google eine verbesserte Version seines reCAPTCHA namens „Invisible reCAPTCHA“. Im Gegensatz zu „no CAPTCHA reCAPTCHA“, bei dem alle Nutzer auf die berüchtigte Schaltfläche „Ich bin kein Roboter“ klicken mussten, lässt Invisible reCAPTCHA als Menschen erkannte Nutzer passieren und zeigt nur verdächtigen Nutzern eine reCAPTCHA-Bildaufgabe an.

Man könnte meinen, dass dies Angreifer vor ein unlösbares Problem stellen würde, da sie nicht erkennen könnten, wann sie getestet werden. Doch nur einen Tag, nachdem Google Invisible reCAPTCHA eingeführt hatte, veröffentlichte 2CAPTCHA einen Blogbeitrag darüber, wie es sich umgehen lässt.

Google erkennt daran, dass ein Nutzer ein Mensch ist, ob dieser die angeforderte Seite bereits zuvor besucht hat. Dies stellt Google anhand der Cookies im Browser fest. Wenn derselbe Nutzer ein neues Gerät verwendet oder kürzlich den Cache geleert hat, liegen Google diese Informationen nicht vor und es muss eine reCAPTCHA-Abfrage gestellt werden.

Damit ein Angreifer einen Credential-Stuffing-Angriff mithilfe von 2Captcha automatisieren kann, muss er sicherstellen, dass eine CAPTCHA-Abfrage ausgelöst wird. Eine Möglichkeit, Invisible reCAPTCHA zu umgehen, besteht daher darin, dem Angriffsskript eine Codezeile hinzuzufügen, die den Browser bei jeder Anfrage zurücksetzt und so eine lösbare reCAPTCHA-Abfrage erzwingt.

Das etwas Schwierige an Invisible reCAPTCHA ist, dass die CAPTCHA-Aufgabe verborgen ist. Es gibt jedoch eine Möglichkeit, dies zu umgehen. Mithilfe des Browsertools „Element untersuchen“ lässt sich das CAPTCHA „finden“. Der Angreifer kann daher eine POST-Anfrage an 2Captcha senden, die einen Parameter mit Angaben dazu enthält, wo sich das verborgene CAPTCHA befindet. Sobald der Angreifer die CAPTCHA-Lösung von 2Captcha erhält, kann Invisible reCAPTCHA auf eine von zwei Arten automatisiert überwunden werden:

  1. JavaScript-Aktion, die eine Funktion aufruft, um das gelöste Token beim Absenden des Seitenformulars zu übermitteln
  2. Änderung des HTML-Codes direkt auf der Webseite, um einen Ausschnitt des normalen CAPTCHA-Codes durch die Eingabe des gelösten Tokens zu ersetzen.

Dass Invisible reCAPTCHA umgangen werden kann, liegt nicht an einem schwerwiegenden Fehler im Design des neueren CAPTCHA. Vielmehr lässt sich jeder umgekehrte Turing-Test grundsätzlich überwinden, wenn die Bedingungen für das Bestehen bekannt sind.

Solange es CAPTCHAs gibt, wird es auch Dienste wie 2Captcha geben, denn die wirtschaftlichen Rahmenbedingungen spielen Kriminellen geradezu in die Hände. Durch die Nutzung kostengünstiger menschlicher Arbeitskräfte lassen sich die Betriebskosten minimieren, sodass Cyberkriminelle bei entsprechend großem Umfang Gewinne in Millionenhöhe erzielen können. Und da es weltweit immer Regionen mit niedrigen Arbeitskosten geben wird, sorgt die konstante Nachfrage auch aufseiten von 2Captcha für ein stetiges Angebot.

Die Welt braucht kein besseres CAPTCHA, da dieser gesamte Ansatz grundlegende Einschränkungen aufweist. Stattdessen sollten wir diese Einschränkungen anerkennen und Schutzmaßnahmen implementieren, bei denen die Bedingungen für eine erfolgreiche Überprüfung unbekannt oder zumindest für Angreifer nur schwer zu ermitteln sind.

Quellen

Holmes, Tamara E. „Statistiken zu Prepaid- und Geschenkkarten.“ CreditCards.com. Creditcards.com, 01. Dez. 2015. Web.

Hunt, Troy. „CAPTCHA mit automatisierten Menschen knacken.“ Blogbeitrag. Troy Hunt. Troy Hunt, 22. Jan. 2012. Web.

Motoyama, Marti, Kirill Levchenko, Chris Kanich und Stefan Savage. Re: CAPTCHAs – CAPTCHA-Lösungsdienste im wirtschaftlichen Kontext verstehen. Tagungsband des 19. USENIX Security Symposium, Washington, D.C. Druckausgabe.

Teilen

Ähnliche Blogbeiträge

F5 und Equinix bündeln ihre Kräfte, um die sichere Anwendungsbereitstellung in Multicloud-Umgebungen zu vereinfachen
F5-Ökosystem | 05.08.2025

F5 und Equinix bündeln ihre Kräfte, um die sichere Anwendungsbereitstellung in Multicloud-Umgebungen zu vereinfachen

F5 und Equinix ermöglichen es Unternehmen, sich weltweit sicher und zuverlässig mit ihren Partnern zu vernetzen.

API-Sicherheitsrisiken und -herausforderungen
F5-Ökosystem | 21.07.2025

API-Sicherheitsrisiken und -herausforderungen

Erfahren Sie, warum APIs für die moderne App-Entwicklung unverzichtbar sind und wie Sie sie vor den häufigsten Sicherheitslücken schützen. Profitieren Sie von Expertentipps und direkt umsetzbaren Strategien.

Ein Meilenstein für die Community Impact Grants von F5
F5-Ökosystem | 21.01.2025

Ein Meilenstein für die Community Impact Grants von F5

F5 feiert das fünfjährige Bestehen seines innovativen Community Impact Grant-Programms, das gemeinnützige Organisationen, bei denen sich F5-Mitarbeitende ehrenamtlich engagieren, mit Fördermitteln in Höhe von 5.000 US-Dollar unterstützt.

Mit moderner, anpassungsfähiger und sicherer Gesundheits-IT Leben retten
F5-Ökosystem | 22.05.2023

Mit moderner, anpassungsfähiger und sicherer Gesundheits-IT Leben retten

Die IT-Investitionen im Gesundheitswesen tragen dazu bei, die schnellsten Wege zu einer besseren Versorgung zu finden, indem sie die medizinische Betreuung näher an die Patientinnen und Patienten bringen. Viele Gesundheitsunternehmen nutzen riesige Mengen an klinischen und anderen Gesundheitsdaten, um Entwicklungen zu verfolgen und übergreifende Trends in der gesamten Gesundheitslandschaft zu erkennen. Gleichzeitig nähern sie sich einer möglichst präzisen, individuell zugeschnittenen Versorgung an.

Verbesserung der Benutzer- und Administrationserfahrung durch sicheren hybriden Zugriff
F5-Ökosystem | 16.09.2020

Verbesserung der Benutzer- und Administrationserfahrung durch sicheren hybriden Zugriff

Diese Kombination aus BIG-IP Access Policy Manager und Azure Active Directory ermöglicht Identitätsföderation, zentralisierten Benutzerzugriff (über Single Sign-on) und erhöhte Anwendungssicherheit (durch Multi-Faktor-Authentifizierung) für geschäftskritische Anwendungen sowie cloudbasierte und SaaS-Anwendungen. Dieser Ansatz vereinfacht die Einrichtung und Bereitstellung, reduziert den Verwaltungsaufwand und verbessert die gesamte Administration.

Das Internet der Sicherheitsdinge
F5-Ökosystem | 11.05.2015

Das Internet der Sicherheitsdinge

Nein, das ist keine Tirade über die Sicherheit des IoT. Es ist eine Geschichte über Veränderung – genauer gesagt über Veränderung und ihre Auswirkungen auf die Sicherheit. Veränderung ist allgegenwärtig. Es gibt unzählige Axiome und Sprichwörter über Veränderung, also ist es ...