Логотип blackzero
Админка rss

Взломал капчу крупнейшей мобильной соцсети

Завершилась моя двух недельная эпопея по взлому капчи с машинным обучением, что в итоге получилось, смотрите ниже.

Все началось с мирных переговоров с дорвеймоней, сначало я пытался написать гипер-пупер генератор текстов(это было бы легче), в процессе он натравил на меня путь истинны. Общий смысл моих выводов был таков "Нехуй хуйней страдать, а делай парсер как делают все уважающие себя дорвейщики." Сначало я так и хотел сделать, как все, но воробей стукнул в темячко и сказал "А я чем лучше петушар с хабры, которые ломают капчу?"

И таким образом я имею ломалку капчи, на 86% посимвольного угадывания(90.8% при ручной фильтраци обучающих данных совсем УГ капчи). Теперь щитаем вероятность распознавания 4 символов, для первого варианта 55%, для второго 68% но тут есть секрет, оценка результата велась по самим символам, а не по капчам. На деле если капча изначально плохо сегментированна, то ждать чуда на всех 4 не стоит. На реальных капчах предпологаю повыше значения.

И так пройдусь по этапам:

1. Имеем относительно незашумленную капчу

2. Преобразуем в черно-белое и применяем самописный и очень эффективный попиксельный фильтр(картинка в процессе написания)

3. Вычисляем расположение капчи и поворачиваем. Кстати капча 0016 плохо отсигментироваллась, если дописать эту штуку, то увеличиться количество распознаваний. Но это и самая сложная часть расходует 95% времени. Думаю применять машинное обучение на вычисление.

4. Режем на цифры

5. ну и как итог работы алгоритма, подаем сегменты, смотрим ответы. Кстати, забыл что кое-че дописывал из сегментатора. В итоге результат такой

Заметьте что на распознавание расходуеться 4миллисекунды, на сегментацию 581, что over дохуя, но работает и хуй с ним. Там около 420 строк кода, в основном - перебор в циклах.

Но скажу я вам это ооочень сложная штука, ведь специально капчи пишут для того, чтобы их не расспознавали. Если бы не мой фильтр помех(тяжелый) я бы хуй даже до 50% на символ вышел.

Осталось погонять проксей, ибо свой IP палить не хочу, а сайтом пользуюсь часто. Досих пор не верю, что мне это удалось. Враг подкупал своей простотой, но мы то знаем...

В заключение при ручной выборке символов нашел индуса, зовут шестерка.

он из этой капчи


Комментарии

Добавить комент

Работают BB коды: b, i, u, color, code, quote, url, img, size, list
Имя


Яндекс.Метрика