Pull to refresh

Comments 162

табличку нужно усложнить — и принять во внимание и другие языки и раскладки, хотя последнее решается функцией.
Понятно дело что в таблице должно быть не 5 записей а много больше и можно добавить еще одну колонку например на English.
Как вариант сделать наоборот, выводить стол, прося ввести A2
тогда уж лучше — кликните на «стол», быстро и понятно
а если хочется одной картинкой, тогда надо через imagearea
А тогда уж, можно просто нарисовать кучу, кучу слов, одно из
которых отправить.
Эврика!
Вывести одну картинку стола и облако слов картинкой. Кликаем на место, где написано Стол и готово. (imagearea или лучше даже просто джаваскриптом передавать координаты клика)
даже одной картинкой не поможет — можно распознавать текст «A2» и на базе его легко вычислить примерные координаты нахождения… Так что если только сетку менять, в этом случае она и будет ключом.
ну я же писал, никаких координат, только загаданное слово
ну и вероятность успешного подбора с первого раза 1/4 в случае с квадратом 2х2
ну это может быть динамически рандомным, от 2*2 до 6*3 к примеру
Уже реализованный, даже усложненный. На нескольких ресурсах видел «Выберите n картинки с природой» и выбираешь среди картинок 16…
так даже лучше, ибо отпадают алиасы животных ^^
Тогда в приведенном выше примере вероятность случайного угадывания составит 25 %. Без всяких умных ботов тогда в среднем из каждых четырех попыток одна будет удачной. Для усложнения необходимо либо увеличить количество вариантов ответа, либо использовать первоначальный вариант в котором вводим название предмета, а не его координату.
Тогда это могут быть не последовательные a1, a2, b1, b2, а например c3, t5, y6 и т.д. Буквы разумеется слегка размазаны, заштрихованы.
Да и к тому же это ведь надо создать ботов специально для такой капчи, обычные ведь будут разглядывать тут символы, т.е. для единичных сайтов — вполне себе вариант.
Для неспециальных ботов достаточно скрытой галочки «я не бот», включаемой JavaScriptом. Обсуждать же имеет смысл только серьёзные капчи.
Тогда выводимый стол должен быть другим иначе легче распознать автоматически.
По размеру или какомуто одинаковому признаку картинки и ее позиции в разметке можно будет пропарсить капчу.
Как вариант можно хранить две разных картинки одного простого придмета, и нужно просто их сопоставить, реализация подобного у Киевстара уже была.
А картинки вы откуда брать хотите? Их будет ограниченное количество? Если да, то, опять же, работа под капчу заточить смогут
а, так вы еще и таблицу с картинками публиковать будете??
тогда чем сложнее распознать картинки, чем буквы? А так вы хоть в кружок картинки выстройте — роботу это не перепятствие
нет таблица публиковаться не будет, это просто как пример
Я вот честно говоря слабо представляю как можно распознать такую каптчу ботом
Алгоритм:
1. определить координаты (искажать координаты… но тогда получается самая обыкновенная капча)
2. найти картинку (разные координатные сетки… но их тоже конечное кол-во, не катит)

эти два пункта не представляют проблемы для обученного бота. Следовательно, капча ничем не отличается от обычной картинки, к которой нужно отгадать название. Много картинок в базу не загонишь, поэтому у робота опять никаких проблем.
Ну и что дальше ты будеш делать с этой картинкой?
Находить по таблице и вписывать название.
Сжимаем картинку до 10x10 пикс. По очертаниям определяем что за объект. Естественно, что заранее проверить все объекты и создать базу.

А вообще идея отличная! Только картинок надо сделать несколько сотен. Выводить штук 5-6 и просить ввести номер «стола» или «стула» (имхо).

Респект.
Картинок хватит сотни 3 + обновлять по штук 30 в неделю. То есть заменять существующие на новые.
Чесслово, я не знаю, какие выгоды и какие мотивации у этих спамеров, но, возможно, спамеру не сложно будет единовременно вбить 3 сотни картинок и по тридцать штук в неделю добавлять новых. Особенно если эта база картинок используется на многих ресурсах.

Чем хорош ныне распространённый принцип капчи с буквами: вариантов картинок практически бесконечно много :)
По идее при желании можно и самому спамить а не ботом :)
Обратите внимание что капчаридеры обычно пишут только для распространенных движков или для очень важных сайтов, если вы сделаете единичную капчу, то да, ваш небольшой ресурс не сломают, в общем и тот же битрикс жил со своей простенькой капчей достаточно долго :)
Главные два параметра хорошей графической капчи:
1) нет никаких привязок к статистике(в смысле вероятность повторения каждого куска изображения стремиться к 0).
2) капча должна нормально читаться.
У вас не выполняются оба условия, т.к. статистически капча решается плюс пользователю одной короткой фразой не объяснишь, что нужно делать. И размеры напрягают, мне нужна капча для авторизации в блоке 200x100px куда мне это все пихать?
P.S. По поводу статистики: я натравливаю бота который начинает долбить и скачивать рисунки, дальше тем же имеджмеджиком я их дроблю, после ручками, 1 кликом(пусть хоть 10 тыс тыс картинок, это все-равно недолго) я их разношу по категориям. Вуаля, запускаем статистического бота который берет рисунок и перебирает все картинки.
Скрипт написать, который все картинки, выводимые в гуглокартинках по запросу «стол», заносит в базу:))
Ради нескольких сайтов спаммер не будет париться. А вот если подобная капча появится на множестве сайтов — тогда действительно труда не составит выгрузить все картинки.
Как вариант — можно дёргать картинки, например, с Яндекса. Запрос — «СТОЛ», преобладание белого. Таким образом, картинки могут меняться ежедневно.
Слабое место в том что я за час смогу выцыганить у скрипта, который рисует эти картинки, всю базу изображений, и успешно ее ручками распарсить в слова.
А я не имел в виду что я буду искать аналоги в Google.Images. Зачем, если образцы мне выдадут на сайте? Останется только порезать и надписать.
А если эти образцы берутся с Google.Images? Или не только оттуда, а и ещё откуда-нибудь:) И ведь не только столы, а много различных предметов.
[QUOTE=McBernar]
Запрос — «СТОЛ», преобладание белого.
[/QUOTE]
Это уже интересней, но вы взгляните на ту же выдачу — 10% там «рабочие столы», т.е. скриншоты, 60% изображений содержат не только столы, но и табуретки, стулья, лампы, мониторы, клавиатуры и прочее. Конечно, описанный метод проще генерации суперискаженной текстовой капчи, но это еще бóльший компромисс.
Текстовые капчи тоже довольно просто расшифровываются… Все капчи плохи, надо какой-то новый способ искать, принципиально новый. Инвайтная регистрация, конечно, хороша, но это, имхо, слишком радикальный метод и работает только для достаточно популярных проектов. Наверное, стоит делать какую-нибудь предварительную регистрацию, чтобы возможности предварительно зарегестрированного пользователя практически не отличались от анонимного, определить какой-нибудь инкубационный период, в течении которого возможности пользователя мало будут отличаться от анонимного, ещё чего-нибудь такого накрутить…
1. Пишем скрипт, который запрашивает новые картинки до посинения, разрезает, проверяет, были ли уже такие, если нет — добавляет в собственную базу. Идём пить чай. Через некоторое время получаем все картинки. Составляем базу, вручную опознавая каждую картинку и вводя слово. Через часик получаем базу со всеми тремя сотнями картинок.

2. 30 штук в неделю — это несерьёзно. При желании можно запросы слать тысячами в день. Ога, какой-то небольшой процент из них будет ошибочным из-за того, что скрипт встретит неизвестную картинку. Но картинок всего — 300, а новых — всего 30. Этот процент будет маленький, и им можно пренебречь =) К тому же никто не мешает заставить скрипт сохранять неизвестные картинки для ручного опознания, и вот, через день бот опознаёт всё.
просто ботом никак, а набить базу если задасться целью легко.

веть делали icq реггер, когда какой то сервис для экономии ресурсов нагенерил за раз кучу картинок с буковками и в дальнейшем были повторы этих каптч
Вероятность удачного поподания 25%
Там не просто все так. Там «Выберите 4(1,2,3,..) рисунки с природой» и картинок насколько помню 16…
Вероятность достаточно низкая…
Я ВВАЖУ «ТИЛИФОН» И АНА НИ РАБОТАИТ…

Возможны жалобы подобного рода.
Честно говоря на современный каптчах где видоизменен текст, тоже бывает не с первого раза разберешь что написано. И никто-же не жалуется.
Они просто не могут капчу ввести на форме обратной связи )
Или жалуются, или просто перестают пользоваться ресурсом. Вот рапидшара убрала своих дебильных кошечек — интересно, почему?
В смысле никто не жалуется? А к чему тогда этот пост, всё же хорошо? о_О
Дак это же прекрасно! Я был бы только рад, если капча отсеивала бы подобных комментаторов на моих сайтах.
тогда надо показывать картинку с текстом на 20сек,
а потом заставлять писАть изложение.
если хотя бы 4/3 оценка, то пускать ;)
Ага, и роботы не могу скопировать текст и переставить там слова :)
Или можно заставить юзера от руки писать изложение и отправлять по почте автору сайта.
Хех, так большинство таких горе-комментаторов и становятся покупателями онлайн- и прочих услуг. Как-то мне кажется, что процентов 90-95 читателей хабра не покупают, к примеру, рингтонов для мобильников. А кто покупает? Вот такие вот «девачки» и «мальчеки».
от таких овощей и делается защита=)
UFO just landed and posted this here
Зато средняя грамотность должна подняться.
А задачу с капчей это как-то решает? Получается хорошая вещь, но — не то, что заказывали.
UFO just landed and posted this here
UFO just landed and posted this here
я уже видел что-то подобное, но с кошками-собаками, человек-не человек и т.п.
+ было чо-то подобное: нужно было написать сколько на картинке кошек.
А мне нравится идея.
Кстати таким образом относится к чужим мыслям не стоит, не та резко, по крайней мере это, выражать.

Предложите лучше, если это считаете гавном. Покажите ссылку, где вариант намного лучше данного, после чего, подкрепившись аргументами, пишите своё мнение.
Идея как способ отсекать СПАМ — действительно то, как охарактеризовал это sanchesfree. Причина — найдите в комментариях выше, там описано как подобная каптча с минимальными потерями может быть распознана.
Идея как способ пофлудить на хабре, обсасывая в который раз подряд одну и ту же тему — хороша.
Почему не стоит относиться так к чужим мыслям, есть они (мысли) действительно ***но?
Зачем изобретать велосипед, предлагая лучшее, если лучшее чем предложенное уже придумано (элементарные картинки при регистрации почты)? Лучше существующей каптчи будет лишь что-то концептуально новое, автор же топика на это не претендует.
Еще момент — человеку вводить подобную каптчу сложнее и дольше, нежели то же самое делать компьютеру. Поверьте — при минимуме геммороя со стороны программиста распознавать такую каптчу со 100% вероятностью не составит труда, это дело 2-3 часов (это я с запасом вам сказал) + время на забивание всех картинок и распознавание их вручную. Потом лишь придется апдейтить систему на предмет появления новых картинок.
Так что еще раз — как способ отсечения СПАМа эта идея действительно говно.
При первом взгляде на картинку, мне почему-то показалось, что вы сейчас предложите идею о том, какая картинка не подходит, типа все неодушевленное (стул, стол, телефон, кирпич), а слон одушевленный. Но ваша идея оказалась довольно скучной)
У биддистов(вроде у них) и кирпич, и стол, и стул одушевлённые. Ибо закон кармы, воздояние и все дела :)
iq тест какой то :)
Картинка объекта, например, стола должна каждый раз изменяться (ну или иметь довольно много разновидностей), иначе это фантики а не капча.
а цифры/буквы както привычней вводить… что нибудь вроде введите _только_ цифры с картинки (на картинке чтото типа «G71A5K2») больше похоже на рабочий вариант…
зато автораспознавалку можно будет сделать таким образом:

скачивается все варианты капчи,

создается тест, типа, насколько ты расист, и показывают кучу картинок по очереди, а пользователь должен будет написать то, что там изображено

вот и создается база картинка = слово…

а если по 4 выводить картинки в одну — то каким-нибудь скриптом разрезать их)
>а если по 4 выводить картинки в одну — то каким-нибудь скриптом разрезать их)

А если модификация — разные пропорции разреза, разный угол?..
Впринципе имхо будет достаточно одной картинке с предметом + рандомные шумы
шумы для бота ерунда, если он не учится в первом классе
Насколько я понимаю, капча-ботов пишут только энтузиасты. В промышленных масштабах (где есть прибыль, а не «для интереса») используется наемный труд + всякие adult-решения.
Можно вечно смотреть на 3 вещи: на огонь, воду и как придумывают «новые» капчи.
Но вот уже который месяц действует золотое правило — капча работает, если ваш сайт никому не нужен.
Объясните, зачем нужно выводить четыре картинки? И зачем эта ересь с координатами? Это не создаёт никаких усложнений для бота. Если уж и напишут бота, использующего базу картинок и выбирающего слова, то распознать координаты и вырезать для анализа нужную картинку из сетки — не проблема. Боту трудностей не доставите, а человеку придётся лишний раз разбираться, что нужно делать — следовательно идея с сектой и координатами — бред. Достаточно картинки, вопроса «Что это такое?» и поля ввода.
куда лучше — сделать табличку 3х3, выдавать слово и просить пользователя кликнуть по нужной картинке. при ошибке — менять картинки местами.

проблема ЛЮБОЙ капчи в том, что нужно что-то вводить — пользователь часто ленится. при этом, подавляющее большинство работает в вебе с помощью мыши, крайне редко используя горячие клавиши. поэтому просить кликнуть — логичнее, ненапряжнее.
точно так же, можно выдавать, скажем, геометрический фигуры (а в усложненном варианте, отсекая дальтоников, — разноцветные, но почти неотличимые по тону). однако, это хожу, ибо робота можно научить определять тип фигур.
Сетка 3х3 очень слаба. 11% угадывания без всякого распознавания устроит каждого второго спамера. Только сетка ~ 8х8 и выше даст приемлимый результат
лучше теорию групп.
там ещё много задач нерешенных :)
UFO just landed and posted this here
А мне идея очень понравилась. И еще, я бы сделал квадрат минимум 3х3 и вместо текстового поля сделал бы селект.
Тогда уж лучше сразу «Поставьте галочку что вы не робот»
Ну да, пожалуй select — это слишком, лучше suggest.
kyivstar.net.ua/sms/
не знаю видели вы этот сайт или нет. нашумевшая история в укрнете. когда ребята хакнули сайт киевстара и отправляли смс кому угодно в пределах страны. ну, пришлось изощрятся программистам стара.

придумали они: из 9ти картинок выбрать 4 живой природы…
имхо писать слова черезчур сложно. проблемы с локализацией сразу приходят в голову.
лучше упрощать всё, как они сделали. попробуйте.
там не обязательно 4… от 2 до 4, насколько я помню, выпадает. Вероятность еще меньше…
Мне кажется, что здесь можно применить тот же способ, который применяется на остальных сайтах.
Взять некоторый набор предметов — тех же стульев, слонов и тд. Только не фотографии, а контуры, по которым можно догадаться, что это такое. Затем при выводе немного исказить каждое изображение. И для пущей уверенности задавать разные вопросы. Например: «Напишите координату предмета, на котором сидят:».

Ещё можно выделить каждый контур своим цветом наложить их друг на друга и исказить. Вывести на экран одно изображение, а не таблицу. Попросить пользователя через запятую перечислить изображённые предметы.
Чтоб пользователи вообще офигели: вылазит такая сетка искаженных, наложенных друг на друга разноцветных контуров (прямо праздник LSD какой-то) и просят при этому «ввести координату предмета, на котром сидят».
Я бы пальцем у виска покрутил и пошел на сайт попроще :)
Зато роботы не пробрались бы.
и пользователи вместе с ними.
что хуже?
Я рассмотрел больше теоретическую модель, каким образом ещё можно защитить сайт от роботов.
А так, я с вами согласен, действительно, пользователям это бы не понравилось.
Но как способ защиты, подходит ведь?
Контуры, думаю, проще распознавать, чем фотографии. Во всяком случае при распознавании капч трейсинг контура — отдельная не самая тривиальная порой операция.
Да, зато с контурами можно замутить всякие интересные темы, типа искажений, наложения и тд.
Моя версия капчи звучит так:
Прежде нужно выбрать пол, варианты:
1. Мужчина
2. Женщина
3. Оно
В Первом варианте выводится картинка голой женщины, нужно определить размер груди, так же варианты:
а) Это мужик
б) 1-2 размер
в) 3
г) 4-5
д) >6
ж) Это либо задница, либо фотошоп
Второй вариант ответа- выводится мужской член, алгоритм тот же
Третий вариант на выдумку хозяина ресурса
Некоторые пользователи только ради капчи на сайте сидели :)))
Хм… А если сделать такой веб-сервис?
Идея: сервис, который предоставляет капчу сайтам-потребителям. Размер таблицы картинок (2х2, 3х10 и т.п.) выбирает потребитель, он же выбирает язык/языки общения с юзером («Введите номер картинки, на которой изображен слон» — по-русски, по-китайски и т.п.).
Такой сервис может взять на себя гемор по формированию базы картинок, их может быть не 100, и не 1000, а намного больше. С языками, опять-же вопросы сам решает и т.п.
Да-да, без огромной базы картинок и достаточно большой базы вариантов идея не жизнеспособна — но тогда возникает проблема синонимов и общих/частных понятий, например, что изображено на картинке — документ или бумага, Эйнштейн или учёный и т.п.
Ну-у-у… Любую идею можно довести до абсурда ))))
«Выберите картинку на которой нарисован слон, но без ушей» )))))
Ессно, подбор картинок должен быть грамотный. Я бы, например, даже стол со стулом в одной выдаче не давал. Как вариант, можно картинки категоризировать и в выдачу выводить картинки только из разных категорий.
Если капча — это действительно большая проблема, то будут пользоваться таким сервисом, имхо.
Идея не оригинальна, у убнутариев в их мозговом штурме уже есть такой вопрос. Называется это все kittenauth.

На самом деле ваша капча по крайней мере в такой реализации ни разу не безопасна, т.к. число картинок будет скорее всего сравнительно не большим и статическим, следовательно, распознать картинки будет не сложно (банальный словарь соответствуий картинка-слово). Распознать «A2», если оно не деформируется, тоже достаточно просто, а если начать деформировать столы и слонов, то действительно начинается царство LSD :-)
Сломается на раз-два, ИМХО. А создать более 1000 картинок почти анриал.
Ну не бред ли, честное слово? Люди и так привыкли уже просто так вводить буквы, а им теперь дают таблицы, заставляют называть предметы. А если иностранец посетит мой сайт с такой «капчей»? По-русски он и одного слова не поймет, а заставлять его бегать за словарем или самому предусмотреть варианты в разных языках — это уже перебор…

Нет, спасибо, идея плохая.
думаю, если усовершенствовать вашу капчу в сторону юзабилити, то получится следующее:
UFO just landed and posted this here
:) пардон не заметил, я о том же писал ниже

Кстати мне показалось что для этого окошка скрипт там тяжеловат
Ага. Но идея неплохая. Хорошо когда придумывают что-то свое.
Хмм… такое обходится не ботами, а индусами :)
Такое пройдётся даже ботами, а не индусами. Это элементарная капча, которую даже я могу сломать
Я латыш и знаю тока латышский язык. Я не пройду капчу.
Идите на латышский сайт с латышской капчей :)
Пользователей любить надо. А то они уходят и не возвращаются.
Так то оно так, но если делаете сайт мультиязычным — так и про капчу не забудете.
Вы когда читаете китайский сайт много понимаете? А ежели гугл транслейт так он и тексты к капче перевести должен.
а зачем вам комментировать русский ресурс, если вы по русски не понимаете?
Я сходу вижу только одну причину — предложить кому-то увеличить пенис.
В аську прислал человек, т.к. нет ника на хабре, цитирую.
«Можено на сервере гененировать составную картинку и карту картинки. А пользователя просто просить клинкуть по объекту на картинке, тогда полностью исчезает подсказка, а координаты объекта ещё угадать нужно и он может быть с искажением.»

Теперь рассказываю как понял это я + немного видоизменил.
1) Генерируем картинку состоящую из множества объектов (то есть выбираем один из множества фонов и в лучайном порядке лепим на него несколько картинок и запоминаем их координаты, причем картинки видоизменяем немного, к примеру отражаем по вертикали или горизонтали или добавляем еще какой шум)
2)Просим человека нажать на определенный предмет.

Думаю идея неплохая.
Вопрос! Как обойти такое?

З.Ы. Человек просит инвайт на хабр, если кто не проч дать пишити в личку дам его аську…

>Вопрос! Как обойти такое?

Индусов в мире много. А платить им надо мало, что-то в районе 1$ за 1000 капч ;)
Если учитывать индусов тогда вообще нереально от этого защититься… Только давать писать зарегиным пользователям а региствация через инвайты.
Конечно не реально. Как сказал один умный человек — если не хотите поймать вирус, отключите комп от интернета и засуньте его в сейф. А главное — больше никогда к нему не прикасайтесь!

Так и тут — обходится любая защита.
Система, в которой присутствует человеческий фактор, заведомо ненадежна ;) ©
Индусы — универсальный инструмент против всех «легких» капч. С другой стороны, ломать голову над не-«легкой» капчей юзеры не захотят. Так что индусы рулят )))
Индусы не пройдут эту капчу.
Слова «стол» в индусском нету ;)
Т.е. русскоязычная капча отсеивает индусов )))
А машине надо платить в 10 или 100 раз меньше — 1$ за 100000 капч :-)
Так что увеличение стоимости спама в десятки раз — это хорошо.
Хорошо тут все понятно! мне
Но большая часть народу в инете не знают всех этих каптчей а вы им еще усложненный ее интерфейс суете
Та давайте уже таблицу Брадиса будем давать…
Такая капча ломается за секунды примитивным ботом, перебирающим словарь языка, неужели не очевидна утопичность идеи?
Пора заводить отдельный блог «Идеи для каптчи» :)
«Эта каптча и опасна и трудна, и на первый взгляд как будто ненужна...»
Идея хороша, но гемморна. Но как по мне, цифры лучше.
Смысла в табличке нет. Буквы и цифры даже распознавать не надо, они всегда неизменны. Единственное, что полезным может быть, это распознавание картинки и то при условиях:
  • 1) большого разнообразия;
  • 2) замены картинки в случае неправильного ввода.
Я — идиот, 4-ый вариант мне не под силу =\
не вам одному )) здесь подробнее и с комментариями )
Очередной велосипед, который
а) давно придуман
б) давно обходится на раз

Это я не к тому что, автор редиска и ламер. Наоборот, молодец, раз думает, развивается. Все хорошие спецы на определенных этапах своего развития придумывают велосипеды)) Просто как-то грустно в последние месяцы заходить на хабр — сообщество заметно помолодело и тем, кто не попадает в этот возрастной диапазон, становится здесь ну совсем скучно…
Зачем далеко ходить идея с капчей с картинками давно реализована на сайте оператора «Киевстар» (не сочтите за рекламу, я пользуюсь другим)

Суть этой идеи:
пользователю показывается 9 картинок матрицой 3х3 во всплывающем окне из них 2-4 картинки природы, остальные нет, отметив нужные и нажав сабмит получаем правильный ответ.

Я не специалист в языке яваскрипта, но наверное наибольшая сложность в ресурсоёмкости такой капчи. Но как роботу пройти такую капчу я придумать не смог.
>В данном случае надо ввести «Стол»

Что будет делать иностранец и что делать мне на англоязычном сайте — я сходу как по англ. «кирпич» не вспомню.
идея с картинками хороша, но мы все забываем про то, что капча генерирует произвольную последовательность символов, а картинка всегда подкреплена каким либо словом из словаря, поэтому обычный «удар в лоб» по словарю любым простым ботом пройдет на ура.
ой, опоздал не заметил предыдущий коммент пользователя Stepanow
Идея с капчей хороша. Но мы забываем об эстетичности форм. Сейчас все имеют небольшую область с кодом который нужно распознать. На личном опыте знаю, что и ее не всегда бывает уместо вставлять, так что бы красиво вписывалась в интерфес. А если будут телефоны и кирпичи? Они же пол формы займут. На пользователе это не может не сказаться.
А по-моему, это уже тот случай, когда накладные расходы на ввод информации с капчей превышают ценность введенной информации и риска получения спама.
Данный комментарий опубликован по просьбе друга, к сожалению инвайта на Хабре он не имеет, но очень хочет.

Мне иногда приходится писать различного рода ботов, некоторым из них приходится «распознавать капчи».

Всегда следует помнить, если очень надо пройти капчу на автомате, это все равно будет сделано. Поэтому надо для начала решить какой уровень защиты предоставляется. Моя статистика зоны ру показывает наличие более чем 50 000 блогов на Wordpress, если один из них придумает некую нестандартную защиту, никто конкретно для этого блога него не внесет и двух лишних символов в код программы-спамера, поэтому вполне сносно работают всякие бредозащиты типа «поставьте галочку „Я не робот“, как только такая защита становится популярной, естественно, этому будут обучены все роботы :)

Если что то в духе „Чтоб Wordpress комментами не забивали“ — хватит и простейших решений;
Если же речь идет о сервисе типа webmaster.yandex.ru — то никакая капча не спасет, ее будут обходить.

Вариантов обхода капчи естественно несколько, но всех их можно условно разбить на две группы:
1. OCR. т.е. „честное“ распознавание картинки программой.
2. Передача задачи распознавания какому-либо сервису. Адреса подобных сервисов знают все, кому они нужны :) На „том конце“ сервиса сидят реальные люди и под разными предлогами (будь то загрузка файла или заработок денег) руками распознают картинки.

Для того, чтобы 90% распознавателей из первой группы обломалось, достаточно, как ни странно, просто „слить“ некоторые буквы. Т.е. сделать так, чтобы небыло возможности автоматически разделить текст на отдельные буквы (когда символы разделены — все становится до неприличного просто). Сделать это можно хорошо и плохо. У recaptcha это сделано плохо (пользователь сам распознает с большим трудом) у webmaster.yandex.ru это сделано отлично (программе сложно ведь и ширина символов искажается, и четкой границы нет, а человеку довольно просто). Для того, чтобы отсечь остающиеся 10% упорных и „талантливых роботов“ нужно думать дальше, вариантов как всегда масса. Капчу Яндекса, насколько мне известно, не умеет распознавать ни один из „публичных“ ботов (т.е. тех, про которые пишут в сети, которых продают и покупают). Это отличная капча. Она проста для восприятия пользователем и довольно сложна для разбора программой.

А вот с сервисами, которых казалось бы обмануть очень сложно, бороться на деле проще: надо посмотреть как они работают. А практически все они работают по следующему принципу — пришли нам картинку, мы дадим тебе ID, зайди попозже, предъяви ID получишь распознанный текст. Все сервисы, которые знаю я, умеют принимать только одну картинку и умеют отдавать ответ только в виде текста (ну т.е. заточены под „нормальные“ капчи). Для того, чтобы они оказались бессильны достаточно просто сделать капчу (саму картинку) нераспознаваемой без сопутствующих инструкций. Например, привести единой картинкой 9 картинок из вашего примера (3x3) и ниже просто написать „ткните в слона“, т.е. по образу и подобию пролетавшего выше киевстара. Как бы не изголялся негодник спамер, сервис
а) не сможет принять и картинку и инструкцию (картинку со слонами и столами и текст „ткните в слона“)
б) даже если случится чудо и картинка пройдет, то сервис просто не сможет ее обработать — как передавать ответ, в каком формате и тд.

Еще стоит учесть, что боты, они ж в большинстве случаев относительно простые программы, их приоритет скорострельность, если конечно речь не идет о сервисе, который ну прям очень надо заспамить (тот же вебмастер яндекса), поэтому добавление простейших (но изменяющихся) проверок отработки javascript, например, будет достаточно для отсева большого количества автоматов и это поможет спасти небольшой блог от засилья роботов :) Или просто сделайте в .css файле вашего сайта запись в сессию какого либо значения, и по итогам получения сообщения проверьте наличие этого самого значения — думаю отсечете подавляющее большинство ботов (браузер нормального пользователя откроет файл стилей и соответственно значение некой переменной запишется в сессию, робот такой ерундой не будет заниматься, если конечно он заранее под это не заточен, тогда стиль загружен не будет, и на этапе получения сообщения вы будете точно знать, что его отправил пользователь (или бот заточенный под ваш ресурс) или же бот (+ возможно пользователь какого нить текстового браузера, не загружающего стили)

Ваш вариант действительно интересен и не надо слушать скептиков, предлагающих „искажать координаты“ :) Сделайте красивую реализацию и все будет отлично!
Дайте, кто-нибудь, человеку инвайт!
хоть бы кто-то задумался, как уродливо будет выглядеть сайт, к которому прикрутят _это_
Отчего же? Если перед отправкой комментария открыть пользователю аккуратный лайтбок, или «появить» капчу с красивеньким эффектом, то все будет стильно и непритязательно. Саму же ее можно оформить более изыскано — есть над чем подумать дизайнерам. Здесь же изложен подход, а не конечная реализация.
мало вам что ли всплывающих окон? :-)
Можно легко избавится от слов и сложностей перевода, если спрашивать не словом, а другой картинкой. Допустим другой стол или сфотографированный с другого угла. Человек легко распознает два разных стола и поймет куда тыкать, боту сложнее.
бот тыкнет наудачу. И с довольно большой (относительно) вероятностью тыкнет правильно.
Еще можно выбирать случайное слово из выбранных рисунков, и предлагать пользователю ввести название ячейки, как в Excel, A2 или 2A, не важно. Но это увеличит вероятность попадания «в яблочко» при простом переборе и угадывании…
А я вот чего придумал сейчас:

и вопрос: «Укажите количество кругов на рисунке» или «Укажите количество геометрических фигур на рисунке»
можно кстати и пару букв туда кинуть, они не являются геометрическими фигурами и будут мешать OCR-распознаванию программой
Все украинские пользователи знакомы с довольно удачной реализацией Вашей идеи:
www.kyivstar.ua/sms/
на какой-то вменяемый номер попробуйте отправить сообщение: получите список из 9 картинок, из которых надо выбрать указанное N картинок живой природы (выбор — кликом мышки). Можно, конечно, развить идею до «выберите N предметов мебели, авто» и т.д. Но сам принцип — схож. Ознакомьтесь и юзайте! :)
Sign up to leave a comment.

Articles