
Обход аудио-капчи reCaptcha от Google с точностью 85%.
Победа над системой аудио reCaptcha от Google с точностью 85%. 
unCaptcha предназначен для доказательства концепции. По состоянию на момент нашего доклада, мы обнаружили, что он успешно решает аудио-задачи reCaptcha с 85% успеха. С того времени reCaptcha, похоже, включает некоторые дополнительные меры защиты, которые ограничивают успех unCaptcha. Мы не будем поддерживать этот код как эффективную атаку на reCaptcha.
Например, Google также улучшил свое обнаружение автоматизации браузера. Это означает, что Selenium в текущем состоянии нельзя использовать для получения капч от Google. Это может привести к тому, что Google будет отправлять пользователю странные аудио-сегменты. Кроме того, мы заметили, что некоторые аудио-задачи включают не только цифры, но и небольшие фрагменты произнесенного текста.
Мы призываем вас быть осторожными при проведении исследований в этой области, учитывать местные, государственные и федеральные законы и незамедлительно ответственно сообщать Google о любых потенциальных уязвимостях.
Кроме того, мы удалили наши ключи API из всех необходимых запросов. Если вы хотите воспроизвести часть работы или проводите собственные исследования в этой области, вам потребуется получить ключи API от каждого из шести используемых сервисов. Эти ключи обозначены в наших файлах длинной строкой символа 'X'.
По всему Интернету сотни тысяч сайтов полагаются на систему reCaptcha от Google для защиты от ботов (на самом деле Devpost использует reCaptcha при создании новой учетной записи). После того, как исследовательская группа Google продемонстрировала практически полное преодоление текстовой reCaptcha в 2012 году, система reCaptcha эволюционировала, чтобы полагаться на аудио- и графические задачи, которые исторически были более сложными для автоматизированных систем. Google постоянно итерационно совершенствовала свой дизайн, выпустив новую и более мощную версию уже в этом году. Успешная демонстрация преодоления этой капчи означает значительную уязвимость для сотен тысяч популярных сайтов.
Наша система unCaptcha имеет возможности атаки для аудио-капчи. Используя программное обеспечение для автоматизации браузера, мы можем взаимодействовать с целевым сайтом и взаимодействовать с капчей, извлекая необходимые элементы для начала атаки. Мы полагаемся в основном на атаку на аудио-капчу — правильно идентифицируя произнесенные числа, мы можем программно пройти reCaptcha и заставить сайт думать, что наш бот — человек. В частности, unCaptcha нацелен на популярный сайт Reddit, имитируя процесс создания нового пользователя, хотя unCaptcha останавливается до создания пользователя, чтобы уменьшить влияние на Reddit.
Система reCaptcha от Google использует продвинутую систему анализа рисков для программного определения вероятности того, что данный пользователь является человеком или ботом. Она учитывает ваши файлы cookie (и, соответственно, ваше взаимодействие с другими сервисами Google), скорость решения задач, движения мыши и (очевидно) успешность решения поставленной задачи. По мере того как система становится все более подозрительной, она выдает все более сложные задачи и требует от пользователя решить их больше. Исследователи уже выявили небольшие слабости в системе reCaptcha — 9 дней легитимного (вроде бы) взаимодействия с сервисами Google обычно достаточно, чтобы значительно снизить уровень подозрений системы.
Формат аудио-капчи представляет собой серию чисел разной длины, произносимых вслух с разной скоростью, тональностью и акцентами на фоне шума. Чтобы атаковать эту капчу, аудио-нагрузка идентифицируется на странице, загружается и автоматически разбивается по местам речи.
После этого каждый аудио-фрагмент числа загружается в 6 различных бесплатных онлайн-сервисов распознавания речи (IBM, Google Cloud, Google Speech Recognition, Sphinx, Wit-AI, Bing Speech Recognition), и результаты собираются. Мы объединяем результаты каждого из них, чтобы вероятностно перечислить наиболее вероятную строку чисел с помощью заданной эвристики. Затем эти числа органично вводятся в капчу, и капча считается завершенной. По результатам тестирования мы наблюдали точность распознавания отдельных чисел более 92% и точность преодоления аудио-капчи в целом более 85%.
Сначала установите зависимости Python:
$ pip install -r requirements.txt
Убедитесь, что у вас также установлены sox, ffmpeg и selenium!
$ apt-get install sox ffmpeg selenium
Затем, для запуска PoC:
$ python main.py --audio --reddit
Это открывает reddit.com, взаимодействует со страницей для перехода к регистрации учетной записи, генерирует поддельное имя пользователя, адрес электронной почты, пароль, а затем атакует аудио-капчу. После завершения капчи (независимо от того, пройдена она или нет) браузер закрывается.
Пожалуйста, прочитайте нашу статью, расположенную здесь, для получения дополнительной информации. Кроме того, вы можете посетить наш сайт здесь или ознакомиться с оригинальными .