Menü
Developer

KI gegen Bot-Erkennung: reCAPTCHA erneut umgangen

Das Wettrennen zwischen Captchas und KI hat Ende Februar ein amüsantes Zusatzkapitel bekommen: Ein Hacker nutzte für ein einen Proof of Concept Googles Spracherkennung, um Googles reCAPTCHA v2 auszutricksen.

Von
vorlesen Drucken Kommentare lesen 90 Beiträge
Googles Spracherkennung ließ sich zur Umgehung von ReCaptcha nutzen

Captchas dienen dazu, menschliche Besucher von Bots zu unterscheiden. Typischerweise kommen dabei Challenge-Response-Tests zum Einsatz, die für menschliche Augen oder Ohren mehr oder weniger gut erkennbare Zeichenfolgen enthalten, für Computer aber kaum lesbar sind. Hacker versuchen sich immer wieder daran, Methoden des Machine Learning zu verwenden, um die Tests maschinell zu lösen.

Ein Hacker, der sich East-Ee Security nennt, hat wohl 2016 eine Möglichkeit zum Umgehen von Googles reCAPTCHA v2 gefunden und sie vor Kurzem veröffentlicht. Pikanterweise hilft dabei ausgerechnet ein weiterer Google-Dienst, nämlich die Speech Recognition API. Die eigentliche Schwachstelle liegt im Audio-Part des Captcha: Das System bietet für ältere Browser, die keine direkte Audiowiedergabe ermöglichen, das Herunterladen der Audio-Challenge.

Nach dem Umwandeln der Audiodatei in das WAV-Format schickt der Hacker sie an die Speech Recognition API. Das Ergebnis war laut dem Blogbeitrag von East-Ee Security wohl gut genug, um das Captcha zu lösen. Der Hacker hat ein passendes Python-Skript zum halbautomatischen Ablauf auf GitHub veröffentlicht.

Allerdings gab es auf den Beitrag Einwände, dass Google je nach Situation schwierigere Challenges sende, an denen sich die automatische Spracherkennung die Zähne ausbeißt. Am 3. März teilte East-Ee Security als Update seines Blogbeitrags mit, dass die Anzahl der Ziffern für die Audio-Challenge inzwischen von 4 bis 5 auf 10 bis 12 gestiegen und die Wiedergabe um Hintergrundgeräusche erweitert worden sei. Damit funktioniert der Proof of Concept nicht mehr. Wirklich neu ist der Ansatz auch nicht, da bereits 2012 eine ähnliche, wenn auch seinerzeit in der Umsetzung komplexere Methode funktioniert hatte, auf die Google ebenfalls seinerzeit mit einem angepassten reCAPTCHA reagierte.

Die Beispiele zeigen aber auch im Nachhinein das Wettrennen zwischen Captchas und Methoden des maschinellen Lernens. Ein gutes Captcha soll von Menschen relativ leicht lösbar sein, aber nicht von Computern. Da Letztere durch immer ausgefeiltere Methoden Bilder, Texte und Sprache laufend besser analysieren können, müssen auch die Gegenmaßnahmen höhere Hürden bieten.

Googles vor Kurzem vorgestellter Ansatz Invisible reCAPTCHA setzt selbst auf Machine Learning in Kombination mit Risikoanalyse und will Bots von menschlichen Nutzern unterscheiden, ohne dass Letztere davon etwas mitbekommen. Dabei entfällt sogar der Klick zum Bestätigen, dass man kein Bot sei. Auf Googles Developer-Site findet sich eine Anleitung, wie Entwickler Invisible reCAPTCHA in eigenen Seiten verwenden können.

Siehe dazu auf heise Developer:

(rme)