Еще раз про кастомный софт
Или как мы обломали рога «мамкиным спамерам».
Если тоже считаете что скоро миром будет править ИИ и роботы, а заказная разработка ПО точно больше никому не нужна — статья именно для вас.
Интро
Как совсем недавно рассказывал, мы наконец закончили собственный сайт (на собственной CRM и собственным контентом) и выставили его нежной розовой попой в жестокий мир интернета.
На сайте есть форма обратной связи, через которую с нашей замечательной командой можно быстро связаться, если у вас появилась потребность в ярких талантах.
Разумеется и сайт и форму очень быстро нашли специальные роботы, добавили в базы спамеров, которые через некоторое время начали свое черное дело:
Да мы это предусмотрели и сразу с первой версии реализовали капчу.
Но пока простую, чтобы не отпугнуть живых пользователей и заодно проверить всю цепочку работы формы обратной связи.
Из-за наличия капчи (пусть и простой), большая часть спама просто не доходила, но даже та небольшая часть, которая все же пролезала через проверку — стала откровенно утомлять.
Было решено немного подумать и выдать оригинальное решение, ну мы же все-таки инженеры, причем не самые тупые.
И наша капча стала выглядеть вот так:
Как так получилось
Все на самом деле очень просто и сложно:
любая разработка стоит денег, чтобы окупилась разработка варианта обхода нашей капчи — нужно чтобы такой тип капчи стал массовым.
А этого никогда не произойдет.
Потому что наш вариант с динамической картинкой на самом деле старый, времен начала интернетов.
Когда-то от него отказались и по-сути только ради моды (в какой-то момент анимированные GIF на сайтах стали признаком дурного вкуса), а также по «политическим причинам» — когда массовости ради стали учитывать особенности всех людей вообще, включая серьезно больных (например эпилептиков).
Поэтому такая капча никогда не появится ни у Гугла ни у Яндекса ни у других крупных компаний — они слишком заботятся «обо всех вообще».
А значит никогда не появится и коммерческого смысла в ее обходе — разработка распознавателя такой капчи банально не окупится.
И пока руки крупных компаний связаны политикой и общим человеколюбием — наш специфичный вариант будет работать.
Сложности обхода
Суть в том что каждый символ нашей капчи «дорисовывается» через паузу в новый фрейм анимированного GIF-изображения, затем через какое-то время начинают затираться мусором первые символы.
Поэтому какой-то одной картинки, на которой одновременно присутствуют все символы капчи просто нет.
А именно такая картинка используется роботами и для их обучения.
Разумеется живой человек такую капчу очень бысто пройдет, просто запомнив увиденные символы, а вот робот — уже нет.
Да, наш вариант тоже можно обойти, но только придется для начала научиться собирать изображение капчи из разных фреймов.
А ведь там могут быть и пустые фреймы и «фейковые», легко и быстро можно добавить динамический фон (например нарезав из видео) и эффекты (вроде затемнения) — словом немало разных сюрпризов из моего боевого прошлого ожидает желающих в это влезть.
И каждый такой сюрприз потребует полной переделки распознавателя нашей капчи — дерзайте мои дорогие ;)
Итого
Временами проблема, которую вам кажется невероятно сложной или требующей каких-то космических затрат решается быстро и молотком с гвоздями подручными средствами.
Но чтобы такое стало возможно нужен реальный практический опыт, а не пафосная должность, курсы или сертификаты.
Поэтому пишите через ту самую форму обратной связи и рассказывайте о ваших проблемах с разработкой ПО — мы действительно можем помочь.