Комментарии 244
есть такие хаки с капчей для phpbb )
но IMHO лучше когда нужно ввести ответ сложения/вычитания
а так робот может наугад попадать периодически
но IMHO лучше когда нужно ввести ответ сложения/вычитания
а так робот может наугад попадать периодически
ммм...тоже верно.
но сложение еще хуже :)
Буду думать дальше :)
ЗЫ Если интересно, там ссылку на рабочую версию.
но сложение еще хуже :)
Буду думать дальше :)
ЗЫ Если интересно, там ссылку на рабочую версию.
А почему не добавить с 10 вариантов ответа? Жираф, Зебра.
Сознание воспримет это легко, гораздо легче чем сложение или обычная капча, а подбирать робот будет долго. На всякий случай напомню о незрячих пользователях, для которых, капчи рунета, не проходимы, на всех приличных западных серверах, о них помнят.
Сознание воспримет это легко, гораздо легче чем сложение или обычная капча, а подбирать робот будет долго. На всякий случай напомню о незрячих пользователях, для которых, капчи рунета, не проходимы, на всех приличных западных серверах, о них помнят.
Не сочтите эгоистом или бездушной сволочью, но а.незрячих просто мизерный процент в рунете (думаю, куда меньше чем за рубежом) б. не думаю что регистрации на разных сайтах происходят так уж часто и в. если что, незрячий может и попросить кого-нибудь пройти капчу, если уж так надо - не думаю что от него это сильно убудет.
Еще раз прошу не воспринимать меня бездушной скотиной.
Еще раз прошу не воспринимать меня бездушной скотиной.
а как незрячий пользователь будет блог читать?
это же не фильм в формате .srt =)
это же не фильм в формате .srt =)
Супер идея! Только вот с другими животными, например, сложнее будет... Вы когда-нибудь слышали того же жирафа или бегемота?))))
Почему не произносить название животного? :) робот врядли поймёт речь.
Надо генерировать звук, иначе робот может запомнить ограниченное количество звуковых дорожек.
Более того, алгоритмы распознавания речи уже давно работают.(
Более того, алгоритмы распознавания речи уже давно работают.(
Можно составить достаточное количество разнообразных описаний представленного животного и комбинировать их — большое количество вариаций, да и роботу сложнее будет. Человек по очевидным признакам явно сможет быстро и однозначно определить кто изображен.
Лень двигатель прогресса.
Чтобы не тратить 5 минут в день на удаление спама, мы будем писать систему которая будет бороться со спамом пару недель.
Но написать бота чтобы обойти её потребуется пару месяцев, и определять кошек/собак/жирафов как всегда будут школьники, желающие заработать на пиво.
Чтобы не тратить 5 минут в день на удаление спама, мы будем писать систему которая будет бороться со спамом пару недель.
Но написать бота чтобы обойти её потребуется пару месяцев, и определять кошек/собак/жирафов как всегда будут школьники, желающие заработать на пиво.
То есть, Вы хотите сказать, что легче уделить пять(?) минут фильтрации спама в день, чем написать защиту?
Я хочу сказать что какая бы система не была сложной для ботов - всегда найдутся люди, которые будут её распознавать (посмотрите объявления на flance.ru, через день требуются).
Защита, конечно, должна быть. Не сильно простая и не сильно сложная. Чтобы человек не думал что же написано на этой картинке, а робот её не распознал.
IMHO, оптимально сложение чисел, написанных буквами.
В крайнем случае можно поставить премодерацию комментариев + автоматом резалку по популярным спам-словам.
А если очень хочется что-то защищать - то куда полезней и правильней будет защищать сайт от взлома.
Защита, конечно, должна быть. Не сильно простая и не сильно сложная. Чтобы человек не думал что же написано на этой картинке, а робот её не распознал.
IMHO, оптимально сложение чисел, написанных буквами.
В крайнем случае можно поставить премодерацию комментариев + автоматом резалку по популярным спам-словам.
А если очень хочется что-то защищать - то куда полезней и правильней будет защищать сайт от взлома.
У жирафа кстати нет голосовых связок ;)
Об этом я не знал) Упорно сидел вспоминал когда я где-либо последний раз слышал возгласы жирафа))
то, что жираф неспособен производить звуков ещё не значит что у него нет голосовых связок.
Ибо они у него есть. Из млекопитающих, насколько я помню, связок нет только у китообразных, да и то не уверен, что у всех.
Но это, конечно, придирка (-:
Ибо они у него есть. Из млекопитающих, насколько я помню, связок нет только у китообразных, да и то не уверен, что у всех.
Но это, конечно, придирка (-:
в одной из сааамых больших серий саус-парка показывали, как кричит жираф :) я это хорошо запомнил :))
А это, кстати идея ;)
ага. звуковой файл будет называться "мяу.wav"
Вот вы знаете русский, а если к вам зайдёт иностранец с переводчиком автоматическим. Ему по словарю незнакомого языка выискивать написание слова?
Если зайдет иностранец, то он и правильный ответ среди предложенных не выберет.
Если зайдёт иностранец, то вряд ли ему будет полезен русский ресурс.
Да ради бога. Просто делаем для кошки варианты ответа «кот»/«кошка», «котёнок»/«котенок», «cat», «kitten», «猫», «子猫»/«小猫»/«仔猫». И подписать внизу, мол, вводите ответ на русском, английском или японском языке. В идеале — делать систему Open Source, чтобы потом кому надо могли добавить остальные языки. Например, для сербского — «мачка»/«mačka» и «мачкица»/«mačkica».
Тогда можно сделать ещё проще:
нужно сопоставить животных, т.е. выдаётся изображение кошки, и список с изображениями удава, окапи, кошки, страуса Эму и т.п. человек выбирает совпадающее животнае ;) И никаких проблем с языками, для слепых добавить звук, навёл на картинку, а она тебе говорит: "Я мурзик" или "Я свинко", ну и по аналогии )))
нужно сопоставить животных, т.е. выдаётся изображение кошки, и список с изображениями удава, окапи, кошки, страуса Эму и т.п. человек выбирает совпадающее животнае ;) И никаких проблем с языками, для слепых добавить звук, навёл на картинку, а она тебе говорит: "Я мурзик" или "Я свинко", ну и по аналогии )))
На wincmd.ru капчу с вычислениями роботы обходить научились, в комментах полно спама :(
имхо и вправду роботу перебрать варианты с радио буттон намного легче чем ввести что то со мат.операциями..
так что редки не слаще
так что редки не слаще
Все верно. Посмотрите код: <td>Контрольная сумма: <b>36 + 3 =</b></td>
Никаких картинок! Для любого программиста спарсить "36 + 3" и вычислить ответ не представляет проблем. Это даже не защита.
Никаких картинок! Для любого программиста спарсить "36 + 3" и вычислить ответ не представляет проблем. Это даже не защита.
А если "36 плюс 3" или "36 прибавить 3" или "сумма 36 и 3"?
не поможет, у каждой операции ограниченное количетво названий, забиваем за каждой название, буквы парсятся не сложнее чем цифры.
тогда мы будем выводить запрос в картинке с искажениями, пусть распознают сначала :)
Если искажать тогда нет смысла в вычислениях
ну почему же двойная защита получается: на картинке изображено "прибавьте сорок восемь к двадцати пяти" и текстовое поле для ввода ответа. Бот будет долго мучаться с таким
запятую забыл после "ну почему же"
Тяжелое для компьютера место это распознавание, на арифметику ему начхать. Значит в словесном описании арифметического выражения ему надо:
1. распознать слова и цифры
2. представить это в виде арифметической операции и вычислить.
Сложность первого пункта зависит от искажений в тексте, тут как с обычной капатчей только боту плюс можно слово и по словарям для достоверности проверить, словарь будет небольшой.
Второй делается несложно, ну сколько вы можете придумать шаблонов подобных описаний арифметических выражений. Немного, вот их и разбирать. Таким образом защита только в первом пункте, что ничем не отличается от обычной капатчи, разве что напрягаем мозг пользователя и легче для распознавания.
1. распознать слова и цифры
2. представить это в виде арифметической операции и вычислить.
Сложность первого пункта зависит от искажений в тексте, тут как с обычной капатчей только боту плюс можно слово и по словарям для достоверности проверить, словарь будет небольшой.
Второй делается несложно, ну сколько вы можете придумать шаблонов подобных описаний арифметических выражений. Немного, вот их и разбирать. Таким образом защита только в первом пункте, что ничем не отличается от обычной капатчи, разве что напрягаем мозг пользователя и легче для распознавания.
OFF: Да сколько на картинке? (при этом нарисовано кошка + собака) :)))) БугоГа
А что, знаки + или - распонзнать сильно сложнее чем цифры? Я уж не говорю о том что при этом выпадают из распознования все буквы...
Я где-то подобную капчу видел:

Правда, шуткой аказалась :-)

Правда, шуткой аказалась :-)
тьфу. Прошу прощенья за мой албанский. Иногда не замечаю чего пишу...
Здесь видел капчу, с похожими вариантами: http://random.irb.hr/signup.php
Решил посмотреть, генерирует ли она их сама, или выбирает из готовых вариантов.
Оказалось - там всего около десятка вариантов... то есть, защита почти никакая.
Решил посмотреть, генерирует ли она их сама, или выбирает из готовых вариантов.
Оказалось - там всего около десятка вариантов... то есть, защита почти никакая.
они легко это вычисляют. находят x + y и поле input рядом и тут же суют в него результат.
как вариант - для уменьшения вероятности попадания случайным перебором, увеличить количество вопросов? даже 3 вопроса снижают вероятность неплохо... :)
и вы таки думаете, что робот не попробует ввести оба варианта?
1. Капчи бывают плохие и хорошие, %username%
2. Капчи со сложением/вычитанием ничем особым не лучше обычных. Вы думаете компьютер не умеет складывать?
3. Не стоит полагаться на единственный способ защиты. Комбинируйте.
1. Капчи бывают плохие и хорошие, %username%
2. Капчи со сложением/вычитанием ничем особым не лучше обычных. Вы думаете компьютер не умеет складывать?
3. Не стоит полагаться на единственный способ защиты. Комбинируйте.
я решил скомбинировать с полем hidden + поле со стилем class="display:none".
Почитаю комментарии, может еще чего удумаю.
Почитаю комментарии, может еще чего удумаю.
Угу. И все-таки вместо комбобоксов лучше текстовое поле и ввод ответа вручную.
да это работает, когда поле скрыто стилем, а робот видит и заполняет и при его заполнении сообщение не публикуется.
я иногда просто ставлю хак, который удаляет сообщение (и юзера заодно) если в нем ссылка от юзера, для которого это сообщение первое. на почту приходит уведомление, что было удалено. за год теста только 100% спам )
я иногда просто ставлю хак, который удаляет сообщение (и юзера заодно) если в нем ссылка от юзера, для которого это сообщение первое. на почту приходит уведомление, что было удалено. за год теста только 100% спам )
Это для тех спамеров кому лень html-код почитать, хотя как мера от новичков спасает отлично.
А еще можно ребус на капчу.
Версия капчи для пхпбб :)
Не знаю как вы, но я долго пытался зарегистрироваться.

На счёт кошка или собака… у меня 1000 прокси, в итоге по статистике 500 правильных ответов. Красота в ущерб качеству!
Не знаю как вы, но я долго пытался зарегистрироваться.

На счёт кошка или собака… у меня 1000 прокси, в итоге по статистике 500 правильных ответов. Красота в ущерб качеству!
Это каптча, а какая то проверка эрудиции ко всему прочему :D
Ну тут по-моему машине при помощи поисковика проще и быстрее ответить, чем человеку)
Первая - княжна Тараканова.
Нет уж, спасибо, я лучше пределы порешаю :)
Вторая - тоже неплохая идея, кстати, если среди ответов сделать 10 имен, где только одно - женское, например:)
Лучше уж задать так вопрос: что это за животное? И поле input.
Но все равно такая капча будет хуже обычной, потому что пусть даже будет и 1000 вариантов вопросов (картинок) - беребрать их можно будет очень быстро.
А капчи на сложение - вообще полный бред.
Но все равно такая капча будет хуже обычной, потому что пусть даже будет и 1000 вариантов вопросов (картинок) - беребрать их можно будет очень быстро.
А капчи на сложение - вообще полный бред.
Эмм... А у вас там много картинок? Берём картинку, делаем хеш содержимого, выясняем правильный ответ. Когда в следующий раз появится эта же картинка - робот будет на 100% уверен в ответе.
Или вы в содержимое файла картинки что-то подмешиваете?
Или вы в содержимое файла картинки что-то подмешиваете?
Именно поэтому картинки нужно искажать фильтрами.
Ох-ох-ох... http://pictcha.net/
Ох-ох-ох... http://pictcha.net/
а что мешает считать "схожесть"?... так... первое, что пришло в голову: переводить в грейскейл (с определёнными коэффициентами) + поиграться с уровнями контраста, а потом считать процент отклонения...
Части изображения довольно значительно смещаются по геометрической сетке, что искажает цвет соседних полей "ломаемого" даунсемплированного варианта. Искажение дополняется сдвигом каждого канала на величину до половины диапазона (можно тоже делать волнообразно). Пойди, узнай, в какой сектор b/w и т.п. конечные пиксели упали, и какая между соседями "общая" разница. Сам диапазон можно также масшатбировать, мешать каналы, накладывать шум в промышленных масштабах (хоть текстуру сверху) фишка в том, что на фотках без играющих роль мелких деталей моск всё схавает, ибо больше важен общий образ (в отличие от текстовых каптч).
Идеек как хорошо поиграться на выдающихся адаптивных возможностях человека воз и маленькая тележка но, по-хорошему, нужно сразу писать ломалку и гонять до умопомрачения. А времени пока мало.
Примерчик же старенький и даже недоделанный, чисто как пища для размышления.
Идеек как хорошо поиграться на выдающихся адаптивных возможностях человека воз и маленькая тележка но, по-хорошему, нужно сразу писать ломалку и гонять до умопомрачения. А времени пока мало.
Примерчик же старенький и даже недоделанный, чисто как пища для размышления.
продолжите ряд:
1, 2, 3, ...
январь, февраль,...
Зима, Весна, Лето, ...
Понедельник, ...
и сделать это в виде картинки
PS: если добавить ряды посложнее, будет защита и от "дебилов"
1, 2, 3, ...
январь, февраль,...
Зима, Весна, Лето, ...
Понедельник, ...
и сделать это в виде картинки
PS: если добавить ряды посложнее, будет защита и от "дебилов"
2akira
обе идеи старые, защищают не на 100%..
если подумать немного самостоятельно, то можно без труда придумать более стойкую капчу ;)
обе идеи старые, защищают не на 100%..
если подумать немного самостоятельно, то можно без труда придумать более стойкую капчу ;)
А почему бы не использовать не животных а покемонов? Их уже около 500 штук, поэтому подобрать сложно будет =)))
Ровно как и пользователю
И не пускать пользователя, пока ВСЕХ не отгадает? :)
Я вот знаю только одного из них=)) Меня никогда не пустять))
А кто такие покемоны? Я слышал их по телеку показывают. А я телек уже года 4 вообще не смотрю.
Самописная реализация защитных механизмов хороша тем, что под неё мало кто отважится переделывать свои скрипты, так что дерзай.
Комбинировать способы - лучшее решение. Пусть случайно выпадает одна из множества разных по принципу действия проверок.
0. Генерировать все картинки одним скриптом c наложением шума и случайным, не очень заметным глазу изменением размера:
img_bild.php?b=ed1008ca4f91bb1a0a190aa230f79a05
1. Загадки:
Три, да три, да три - что получим?
2. Арифметические примеры (картинка+текст):
Каков результат арифметической задачи в 1. строке?
100+64-46=? \
12+156-2=? = Картинка
17+37+49=? /
Используйте только цифры при ответе. Сложите получившееся число с семью. То есть, если результат равен пяти, введите цифру 12.
3. В тексте подменять русские буквы схожими по написанию английскими.
4. Высылать код подтверждения не на мыло, а в один из IM.
6. Не использовать чекбоксы, выпадающие списки и прочие подсказки
... и так далее.
Комбинировать способы - лучшее решение. Пусть случайно выпадает одна из множества разных по принципу действия проверок.
0. Генерировать все картинки одним скриптом c наложением шума и случайным, не очень заметным глазу изменением размера:
img_bild.php?b=ed1008ca4f91bb1a0a190aa230f79a05
1. Загадки:
Три, да три, да три - что получим?
2. Арифметические примеры (картинка+текст):
Каков результат арифметической задачи в 1. строке?
100+64-46=? \
12+156-2=? = Картинка
17+37+49=? /
Используйте только цифры при ответе. Сложите получившееся число с семью. То есть, если результат равен пяти, введите цифру 12.
3. В тексте подменять русские буквы схожими по написанию английскими.
4. Высылать код подтверждения не на мыло, а в один из IM.
6. Не использовать чекбоксы, выпадающие списки и прочие подсказки
... и так далее.
только что разжился в мыслях оригинальной идеей....
не КТО на картинке, а СКОЛЬКО на картинке кошек?...
Собак?... Вилок и листьев?....
Я посмотрю, как бот будет определять на цветном фоне кошек, да.....
иногда они так ныкаются, что и человеку трудно найти =)
как вам идейка? еще не видел =)
не КТО на картинке, а СКОЛЬКО на картинке кошек?...
Собак?... Вилок и листьев?....
Я посмотрю, как бот будет определять на цветном фоне кошек, да.....
иногда они так ныкаются, что и человеку трудно найти =)
как вам идейка? еще не видел =)
Я уже видел :) krolik.pp.ru и я уже обдумывал такое.
Можно взять картинки как из Науки и Жизни и спрашивать сколько на них отличий.
хм.... не уверен, что в науке и жизни, но "найдите 10 отличий" меня всегда убивало.... =/
а как вебмастеру искать и делать эти картинки?....
для варианта с подсчетом - просто надрать милых фоток с котятами и уменьшить... =)
а как вебмастеру искать и делать эти картинки?....
для варианта с подсчетом - просто надрать милых фоток с котятами и уменьшить... =)
Ну это для ботов в принципе тоже не сложно.
Вычитаются одна картинка из другой. Места, где есть отличия будут отличаться. Бот считает число таких областей, вот и всё =) Хотя, возможно, одного вашего сайта спамеры скрипт разрабатывать не будут...
Вычитаются одна картинка из другой. Места, где есть отличия будут отличаться. Бот считает число таких областей, вот и всё =) Хотя, возможно, одного вашего сайта спамеры скрипт разрабатывать не будут...
и сколько на капче поместиться кошек? 10? перебор опять легко устроить...
Так есть же предел размеров, ну сколько вы натыкаете туда кошек? 10, 20, 100??? А взломщик будет действовать топорно методом китайцев из анекдота про пароль Мао Цзедун. Кстати, при большом количестве предметов, человек замахается их считать, поэтому вы будете сильно ограничены в выборе предельного количества (я думаю не больше 10-15 предметов).
ладно, тогда делаем как у людей - после попытки ввода выдается уже новая капча, предыдущая сессия считается невалидной.
пусть у нас десяток разных картинок с кошками, десяток с собачками, еще можно пингвинов нарисовать...
тогда вероятность угадать роботом - 1/n
пусть у нас десяток разных картинок с кошками, десяток с собачками, еще можно пингвинов нарисовать...
тогда вероятность угадать роботом - 1/n
Если объектов будет немного, компьютер может просто угадывать. Даже 5% успешного прохождения теста компьютером делает вашу проверку бесполезной.
А если рисовать много, то не каждый человек захочет их считать
А если рисовать много, то не каждый человек захочет их считать
50% процентов правильного ответа при случайном выборе...
просто поменяй маску шрифтов
так делает рапидшара
просто поменяй маску шрифтов
так делает рапидшара
Как вариант можно вывести какой-то натюрморт из 10 предметов с просьбой написать названия любых, скажем, 5 предметов с картинки. Или назвать обведенные предметы. Мозги вычислениями напрягать не надо, глаза портить в попытках разглядеть что за буква - тоже. Что-то не видно - и фиг с ним. Для компьютерщиков такой ввод займёт секунды, а робот должен спотыкаться.
Правда такая штука довольно трудоёмка на предмет создания картинок... Хотя если взять травлёные клип-арты, то вполне решаема даже алгоритмическими методами.
Правда такая штука довольно трудоёмка на предмет создания картинок... Хотя если взять травлёные клип-арты, то вполне решаема даже алгоритмическими методами.
C gdsa.rpgmaker.ru.. Что странно, оно довольно-таки непроломно, несмотря на ограниченность 16-ю комбинациями.
плохая капча)
по теории вероятности 50% ответов будет правильными)
любой вариант капчи с выбором из списка подвержен простой атаке - перебору "в лоб" вариантов ответов роботом.
как только роботописателю потребуется спам по вашему ресурсу, бот обойдет эту капчу.
по теории вероятности 50% ответов будет правильными)
любой вариант капчи с выбором из списка подвержен простой атаке - перебору "в лоб" вариантов ответов роботом.
как только роботописателю потребуется спам по вашему ресурсу, бот обойдет эту капчу.
Где-то видел статью, там при помощи каптчи распознавали куски сканов из книг. И библиотеку помогали создавать, и безопасность высокая :)
Тоже видел этот пример или похожий. Там брались сканы книг, с помощью обычных программ распознавания выделялись сложные места (в которых программа не смогла выполнить распознавание), кусок скана использовался в качестве CAPTCHA. ИМХО, это довольно кривой способ, так как, во первых, в CAPTCHA и распознавании текста из книг всё-таки разные принципы используются, во вторых, текст заранее должен быть распознан.
В сканах, в отличие от CAPTCHA:
- символы почти всегда легко разделяются
- часто используются распространённые шрифты
- требуется высокая скорость распознавания
- текст часто на естественном языке, то есть, можно использовать марковские цепи
- перебор не используется
Кстати, у кого-нибудь получилось вот эту CAPTCHA распознать: http://www.captcha.ru/kcaptcha/
- выглядит надёжно.
В сканах, в отличие от CAPTCHA:
- символы почти всегда легко разделяются
- часто используются распространённые шрифты
- требуется высокая скорость распознавания
- текст часто на естественном языке, то есть, можно использовать марковские цепи
- перебор не используется
Кстати, у кого-нибудь получилось вот эту CAPTCHA распознать: http://www.captcha.ru/kcaptcha/
- выглядит надёжно.
суть в том, что там благодаря массовости становилась возможной именно помощь в пополнении библиотеки. Т.е. человек писал текст, который выглядел сравнительно нормально и давно был распознан, плюс слово или фразу, что машина не смогла распознать. Ну даже если безопасность не выше, чем в простых капчах, полезность ее больше.
А что скажете про капчу с координатами клика на картинке?
Пример: Отображается картинка например 150х150рх, на ней 10х10рх круг, квадрат, или что угодно за фигура какого-то цвета. И предложение кликнуть по ..... При клике js вычисляет координаты клика на картинке и передает в скрипт, а там уже идет сравнение с координатами обьекта который был выведен на картинке.
Пример: Отображается картинка например 150х150рх, на ней 10х10рх круг, квадрат, или что угодно за фигура какого-то цвета. И предложение кликнуть по ..... При клике js вычисляет координаты клика на картинке и передает в скрипт, а там уже идет сравнение с координатами обьекта который был выведен на картинке.
Есть 1 небольшой минус - сравнительная сложность реализации. Хотя, в принципе, реально.
Да нет, кстати. Буквально за пару часов можно реализовать, пожалуй. Другое дело, что это не будет работать без Javascript, что коробит моё чувство прекрасного.
Я о том же. Я же сказал "сравнительная сложность".
Ещё как будет. <map> и <input type="image"> ещё никто не отменял ;)
Идея интересная, надо будет на днях попробовать :)
Идея интересная, надо будет на днях попробовать :)
Кстати, вариант как усложнить это: берётся подложка (можно много разных подложек), на которой размещаются объекты (штук 5 разных объектов из коллекции в штук 20 объектов, можно больше). В качестве объектов могут выступать картинки, которые накладываются на подложку с варьирующейся степенью прозрачности, а также повёрнутыми под разными углами.
Среди объектов также могут быть буквы и цифры.
А если пользователь не может по каким-то причинам нажать нужный объект, можно просто попросить перечислить нарисованные объекты.
Среди объектов также могут быть буквы и цифры.
А если пользователь не может по каким-то причинам нажать нужный объект, можно просто попросить перечислить нарисованные объекты.
а обязательно ли во всех случаях пользоваться защитой? иногда помоему можно сделать форму защищенной и без назойливых "проверок".
например я делал защиту на одном из сайтов, когда открываешь форму добавления - в сессию запоминается время открытия страницы добавления формы и после отправки формы проверяется время, прошедшее с момента открытия предыдущей страницы - если переменной нет или она меньше определенного времени(которое необходимо человеку, чтоб заполнить форму) - его выбрасывает, допустим, на главную. А переменную обнуляет(если она задана).
Собственно, роботов пока не видно :) все вроде тихо-мирно :)
например я делал защиту на одном из сайтов, когда открываешь форму добавления - в сессию запоминается время открытия страницы добавления формы и после отправки формы проверяется время, прошедшее с момента открытия предыдущей страницы - если переменной нет или она меньше определенного времени(которое необходимо человеку, чтоб заполнить форму) - его выбрасывает, допустим, на главную. А переменную обнуляет(если она задана).
Собственно, роботов пока не видно :) все вроде тихо-мирно :)
плюс, после 3ех неудачных попыток, можно блокировать ип на час. тогда перебор уже станет либо трудоемким процессом, либо очень медленным.
если новая сессия, тоесть нету переменной с датой - ничего не добавится. :)
смысл всего того, что я описал - уберечь сайт от спам-роботов.
идентификатор сессии сохраняются в куке, верно. Привязка по айпи не нужна, зачем? ну уибили вы сессию - если вы нормальный пользователь, то при попадании на страницу добавления формы вам в сессию создастся переменная, если ее не будет при проверке формы - вы ничего не опубликуете. если вы удалите куку - вам просто придется еще раз зайти на страницу с формой и заново все добавить и засабмитить форму. где что непонятно? :)
идентификатор сессии сохраняются в куке, верно. Привязка по айпи не нужна, зачем? ну уибили вы сессию - если вы нормальный пользователь, то при попадании на страницу добавления формы вам в сессию создастся переменная, если ее не будет при проверке формы - вы ничего не опубликуете. если вы удалите куку - вам просто придется еще раз зайти на страницу с формой и заново все добавить и засабмитить форму. где что непонятно? :)
А как насчет попросить пользователя дописать последние 2 буквы. К примеру, форма будет выглядеть так:
Животное на картинке - это кош[__].
Робот перебирать значения будет дольше чем в случае с радиобуттонами.
Животное на картинке - это кош[__].
Робот перебирать значения будет дольше чем в случае с радиобуттонами.
набрал "кош" в гугле, первое что он мне предложил это кошки, второе — кошка :))
просто наблюдение
просто наблюдение
Хотите сказать, что робот будет обращаться к гуглю? интересно...
А что, это разве проблематично?)
нет, просто оригинальная идея. Не каждый робот додумается)))
ЗЫ: на запрос "ко" гугль реагирует совершенно стандартно.
Представляю, новая каптча: "Далеко-далеко, на лугу пасутся ко. кто?" (:
ЗЫ: на запрос "ко" гугль реагирует совершенно стандартно.
Представляю, новая каптча: "Далеко-далеко, на лугу пасутся ко. кто?" (:
Ну, как ни странно, Гугл на запрос «Далеко-далеко, на лугу пасутся ко. кто?» выдал кучу интересных неверных вариантов, что конечно может застопорить робота... Но согласитесь — Вы ведь не так и много знаете достаточно распространенных (а это важно) загадок такого типа? На большинство других ответ Гугла будет весьма однозначен и в то же самое время верен ;)
Мне нравится капча с простыми арифметическими задачками, в тексте которых нет ни одного символа, представляющего собой цифру, а некоторые русские буквы заменены на идентичные по написанию английские, например "Ввeдитe в этом поле сумму остаткa oт деления пятидесяти на семь и пpоизведения чисел сорок пять и семьдесят два". Правда, на сайтах для блондинок такая капча вряд ли будет способствовать увеличению числа зарегистрированных пользователей.
Ещё одна капча
http://nzeemin.livejournal.com/207995.html
Собственно, все капчи что я видел показывают обычный текст, плюс искажения в той или иной форме. Предлагается следующее: рендерить трёхмерную сцену с выпуклым текстом (обычный текст плюс толщина букв по третьей координате), несколько повёрнутым от наблюдателя на случайный угол (в определённых пределах, разумеется). Текст делаем полупрозрачным, добавляем ещё ряд объектов для зашумления (например, пузыри разного размера в случайных координатах). Текст и объекты делаем полупрозрачными. Фон лучше использовать нерегулярный, например, фрагмент фотографии. Ну и наконец, трёхмерные эффекты — туман, отражения, круги засветки от источника света направленного на наблюдателя итп. Т.е. фишка в чём: распознавание трёхмерных объектов на порядки сложнее чем плоский OCR, при этом человек справляется с таким распознаванием без напряжения. Конечно, всё это потребует привлечение OpenGL или DirectX, да и генерироваться это будет медленнее, но результат-то стоит того. Да и в любом случае применяется кеширование рисунка после генерации.
http://nzeemin.livejournal.com/207995.html
Собственно, все капчи что я видел показывают обычный текст, плюс искажения в той или иной форме. Предлагается следующее: рендерить трёхмерную сцену с выпуклым текстом (обычный текст плюс толщина букв по третьей координате), несколько повёрнутым от наблюдателя на случайный угол (в определённых пределах, разумеется). Текст делаем полупрозрачным, добавляем ещё ряд объектов для зашумления (например, пузыри разного размера в случайных координатах). Текст и объекты делаем полупрозрачными. Фон лучше использовать нерегулярный, например, фрагмент фотографии. Ну и наконец, трёхмерные эффекты — туман, отражения, круги засветки от источника света направленного на наблюдателя итп. Т.е. фишка в чём: распознавание трёхмерных объектов на порядки сложнее чем плоский OCR, при этом человек справляется с таким распознаванием без напряжения. Конечно, всё это потребует привлечение OpenGL или DirectX, да и генерироваться это будет медленнее, но результат-то стоит того. Да и в любом случае применяется кеширование рисунка после генерации.
Представил себе:
"Подождите... Идет генерирование капчи... Первый проход... ОК. Расчет геометрии... ОК. Наложение карты отражений... ОК. Расчет освещения... ОК. Антиалиасинг... ОК.
Введите текст с картинки" ))
А так, конечно, хорошая идея.
"Подождите... Идет генерирование капчи... Первый проход... ОК. Расчет геометрии... ОК. Наложение карты отражений... ОК. Расчет освещения... ОК. Антиалиасинг... ОК.
Введите текст с картинки" ))
А так, конечно, хорошая идея.
или:
Подождите...
Идет генерирование капчи...
Первый проход... ОК.
Расчет геометрии... ОК.
Наложение карты отражений... ОК.
Расчет освещения... ОК.
Антиалиасинг... ОК.
Ошибка: Извините, Ваша видеокарта не поддерживается нашим сайтом
:)
Подождите...
Идет генерирование капчи...
Первый проход... ОК.
Расчет геометрии... ОК.
Наложение карты отражений... ОК.
Расчет освещения... ОК.
Антиалиасинг... ОК.
Ошибка: Извините, Ваша видеокарта не поддерживается нашим сайтом
:)
Их можно в свободное время рендерить, а при входе выдавать готовую .
Присутствие кэширования таких изображений, думаю, перечеркивает все плюсы риэлтайм рендеринга на сервере.
Кстати - оценка уязвимости текстовых капчей: http://www.ocr-research.org.ua/list.html
Да ладно, тоже мне непроходимая. Удивительная напроходимость.
На вечер возни.
На вечер возни.
интересно было бы поподробнее.
вы предлагаете картинки распознавать или другим каким путём?
вы предлагаете картинки распознавать или другим каким путём?
Как сделана эта капча:
есть два набора картинок, определенного размера. Один - с живой природой, второй, соответственно, нет.
Как ломать: сесть, написать бота, который выкачает все картинки, и руками приписать им "соответствующий тэг".
Они предвидили этот шаг, и чтобы быт не мог понять, какая перед ним картинка - на картинку случайным образом наносится логотик киевстара. Но коэффициент корреляции это меняет несущественно, раньше 100% точек совпадало, теперь 60% - все равно больше, чем с любой другой картинкой.
есть два набора картинок, определенного размера. Один - с живой природой, второй, соответственно, нет.
Как ломать: сесть, написать бота, который выкачает все картинки, и руками приписать им "соответствующий тэг".
Они предвидили этот шаг, и чтобы быт не мог понять, какая перед ним картинка - на картинку случайным образом наносится логотик киевстара. Но коэффициент корреляции это меняет несущественно, раньше 100% точек совпадало, теперь 60% - все равно больше, чем с любой другой картинкой.
я новичок в области web-программирования, посему вопрос к знающим людям: а кто-нибудь пробовал генерировать капчу на флэше? насколько это трудоемко и ломаемо? Скажем, можно ведь выводить какие-то символы добавив к ним эффект вращения вокруг какой-нибудь оси (псевдо 3D) с произвольной скоростью
Никогда подобным не занимался, но, возможно, имеет смысл сделать некую вариацию на тему "Подержите мышку более 3 секунд над зеленым квадратом". Т.е. вообще не требовать от пользователя что-либо вводить вручную. Результат, естественно, помещать в hidden-поле, но никто не помешает генерировать, к примеру длинные строки значений для разных вариантов.
Примерно как я представляю себе это: генерится картинка с несколькими простыми разноцветными фигурами, к ней генерится javascript, который должен каким-то образом проверять, к примеру положение курсора мыши. Плюс для всего этого хэш из, скажем, 40 пар ключей-значений в виде "A#f4_r" => "3.FF daRR45h!%". Соответственно, правильное значение только одно и будет выбрано скриптом только по определенному условию.
Можно разнообразить действия пользователя, к примеру "Нажмите на синий круг два раза и один раз на синий треугольник в заданном порядке".
К минусам этой системы можно отнести относительную сложность реализации (это кого-то пугает? :)
К плюсам - простоту для пользователей, практически не ограниченное число комбинаций, большой потенциал для расширения.
Примерно как я представляю себе это: генерится картинка с несколькими простыми разноцветными фигурами, к ней генерится javascript, который должен каким-то образом проверять, к примеру положение курсора мыши. Плюс для всего этого хэш из, скажем, 40 пар ключей-значений в виде "A#f4_r" => "3.FF daRR45h!%". Соответственно, правильное значение только одно и будет выбрано скриптом только по определенному условию.
Можно разнообразить действия пользователя, к примеру "Нажмите на синий круг два раза и один раз на синий треугольник в заданном порядке".
К минусам этой системы можно отнести относительную сложность реализации (это кого-то пугает? :)
К плюсам - простоту для пользователей, практически не ограниченное число комбинаций, большой потенциал для расширения.
Капчи с картинками делать нехорошо, потому что у пользователя в браузере могут быть отключен показ картинок.
Вот это пример по настоящему крутой CAPTCHA: http://nudnik.ru/users.php
И что там на картинке?! )))) Тут как в психологическом тесте, каждый что-то для себя увидет))+ картинка не меняется))
А что там? Я так и не смог разобраться... :(
По моему это прикол — капча статична))
У Смрнова еще круче идея была - http://nudnik.ru/img/imhuman.png :)
Похоже на Ктулху :)
Судя по тому, что я долго пытался подобрать незанятое ИМЯ (а не подпись к капче), вводя его цифрами, сайту эта капча не помогла :)
у себя на сайте (форум студентов химиков) планирую поставить капчу - назвать элемент (ввести название) по его символу (картинка).. для тех кто не знает - чуть ниже ссылка на картинку с таблицей менделеева..
как вариант - называть по ИЮПАК различные химические соединения (которые кстати можно генерировать текстом - вряд ли есть робот умеющий называть хим соединения по формуле).. например "C2H5OH" (ответ "этанол")..
как вариант - называть по ИЮПАК различные химические соединения (которые кстати можно генерировать текстом - вряд ли есть робот умеющий называть хим соединения по формуле).. например "C2H5OH" (ответ "этанол")..
Вот, например, Киевстар украинский использует картинки, из которых надо выбрать определенное кол-во изображений живой природы - http://www.kyivstar.net/ru/sms/
откуда столько популярности у сайта, уже третий раз ссылка тут
зы: в опере на той странице вёрстка кривая :)
зы: в опере на той странице вёрстка кривая :)
Где-то год назад у них была обычная цифровая каптча и текст каптчи лежал в куке ))
уже достали со своим киевстаром :) У меня в NN вообще картинки не отобразились, поэтому Киевстар идёт лесом :)
Идея не нова - как уже писАли тут - http://research.microsoft.com/sn/asirra/
Там же разобраны - http://research.microsoft.com/sn/asirra/security.aspx - подробно достоинства и недостатки, вероятность взлома и т.д.
Если вкратце - для защиты от брутфорса нужно много изображений (в реализации от МС - 12, что дает вероятность всего 1/4096 - не так уж и мало), ну и нужна большая база картинок (МС использует базу от Petfinder.com - больше 2х миллионов изображений.)
Там же разобраны - http://research.microsoft.com/sn/asirra/security.aspx - подробно достоинства и недостатки, вероятность взлома и т.д.
Если вкратце - для защиты от брутфорса нужно много изображений (в реализации от МС - 12, что дает вероятность всего 1/4096 - не так уж и мало), ну и нужна большая база картинок (МС использует базу от Petfinder.com - больше 2х миллионов изображений.)
В Asirra плохо то, что изображения очень маленькие и нужно провести по всем чтобы понять где кошки. Если увеличить их до 80x80 скорость работы с капчей значительно возрастет (возможно там можно и настроить я не смотрел).
Ну это детали реализации. 12 картинок 80х80 не во всякий монитор влезут :)
Уменьшать количество картинок нельзя - критично по безопасности.
Уменьшать количество картинок нельзя - критично по безопасности.
Там раньше были простые обычные хорошо видные картинки. Это они, видимо, всеобщему ajax-психозу поддались и идиотские всплывания устроили.
А на одной картинке я увидел животное, которое как-то раком изогнулось, что я вообще не понял, кошка это или собака.
Помоему идея отличная, юзабельность вообще несравнима с искореженными буквами. Вопрос в количестве картинок. Как вариант решения: договариваемся с каким нибудь сайтом тематических фотографий или обоев. И скриптом раз в день(неделю, месяц) берем у них новый набор картинок. Уменьшаем до нужных размеров, качество пострадает но не критично.
Вводить по моему нужно название животного а не выбирать, при переборе просто работает теория вероятности. Периодически менять категории, варианты неограниченны, от марок автомобилей до всем известных картин.
На каждую категорию держать несколько ответов(кот, кошка, котенок), подойдет любой. Кстати вариант для стартапа, этакий генератор капатч который будет их выдавать сайтам, всем разные, постоянная смена, большая регулярно обновляющаяся база изображений, маленькая подпись на каждой капатче :)
Вводить по моему нужно название животного а не выбирать, при переборе просто работает теория вероятности. Периодически менять категории, варианты неограниченны, от марок автомобилей до всем известных картин.
На каждую категорию держать несколько ответов(кот, кошка, котенок), подойдет любой. Кстати вариант для стартапа, этакий генератор капатч который будет их выдавать сайтам, всем разные, постоянная смена, большая регулярно обновляющаяся база изображений, маленькая подпись на каждой капатче :)
А вот статья была на Хабре о капче с opera.com, что думаете про такое?
А у меня почему то не нажимается кнопка проверить... и кнопка "кошка" даже не выделяется (
http://media.aplus.by/2007/10/08/samye_sumasshedshie_captcha.html
Вариант?
Вариант?
Я на своем форуме на базе phpbb решил проблему регистраций ботов следующим образом:
Нужно зайти в файл /includes/usercp_confirm.php
Найти функцию randomise:
// This is designed to randomise the pixels of the image data within
// certain limits so as to keep it readable. It also varies the image
// width a little
function randomise($scanline, $width)
{
$new_line = '';
$start = floor($width/2);
$end = strlen($scanline) - ceil($width/2);
for ($i = $start; $i 0, 205));
}
else if ($pixel > 190)
{
$new_line .= chr(mt_rand(145, 255));
}
else
{
$new_line .= $scanline{$i};
}
}
return $new_line;
}
Произвести следующие замены:
0->110
205->130
145->50
255->250
Итого: заменены 4 числа в коде. Других изменений делать не нужно.
Как это будет выглядеть можно посмотреть на моем форуме
Если вам не нравится контрастность, можете сами подобрать эти числа, чтобы былу лучше видно, но боты все равно ен могли бы зарегистрироваться.
Нужно зайти в файл /includes/usercp_confirm.php
Найти функцию randomise:
// This is designed to randomise the pixels of the image data within
// certain limits so as to keep it readable. It also varies the image
// width a little
function randomise($scanline, $width)
{
$new_line = '';
$start = floor($width/2);
$end = strlen($scanline) - ceil($width/2);
for ($i = $start; $i 0, 205));
}
else if ($pixel > 190)
{
$new_line .= chr(mt_rand(145, 255));
}
else
{
$new_line .= $scanline{$i};
}
}
return $new_line;
}
Произвести следующие замены:
0->110
205->130
145->50
255->250
Итого: заменены 4 числа в коде. Других изменений делать не нужно.
Как это будет выглядеть можно посмотреть на моем форуме
Если вам не нравится контрастность, можете сами подобрать эти числа, чтобы былу лучше видно, но боты все равно ен могли бы зарегистрироваться.
трудность для человека не значит трудность для машины, почему то многие об этом забывают. Машине турдно работаьт с произвольными обьектами, которые не подходят под заданный шаблон букв. Искривления и пр. Если сделать буквы еле читаемыми за счет шума и резкости то жто буджет сложно для человека а не для машины. Машина просто поработает с различными алгоритмами и обнаружит границы букв, дальше сопоставление с шаблоном. В вашем случае найти границы букв достаточно легко, они отличаются от фона, а искажений букв нет.
Стандартные хрумеры не берут эту капчу. Разве это недостаточно для практического применения в ограниченных объемах?
У меня на форуме это решение работает уже почти год.
Я, конечно, понимаю, что в почете сложные алгоритмы, но простые "локальные" заплатки тоже неплохи.
У меня на форуме это решение работает уже почти год.
Я, конечно, понимаю, что в почете сложные алгоритмы, но простые "локальные" заплатки тоже неплохи.
Не в сложности дело, я как раз ценю именно простоту, чем проще решение тем оно красивее. Но я говорю о взламываемости вообще, т.е. сколько усилий потребуется чтобы персонально сломать вашу каптчу. А стандартные много чего не берут, вернее они берут только стандартное(например стандартная каптча для phpBB наверняка взламывается сразу просле изменений). Если нужно защитится от общего спама то ваш метод вполне пойдет, но если за вас возьмутся персонально, вы сэкономите взломщикам очень много времени :) (без обид, я сам иногда пользуюсь этим методом(незначительного изменения стандартного алгоритма), но это не мешает мне его осуждать :) )
Согласен с вами! Но мой форум того не стоит, чтобы кто-то персонально брался за него. Просто было в свое время интересно, как формируется изображение в капче, и я нашел, что достаточно изменить несколько чисел, чтобы можно было регулировать случайный шум и контрастность.
А так... если кто-то за вас займется, НИКАКАЯ капча не спасет. Вот один из алгоритмов: капча в режиме реального времени передается на посещаемый дружественный порно-сайт и там его посетители, стремящиеся получить доступ к эротическим картинкам или видео, скажем, должны распознать капчу. Они ее распознают, код передается на изначальный сайт и вводится в форму. Вот так :)
То есть трудятся уже люди, а не роботы.
А так... если кто-то за вас займется, НИКАКАЯ капча не спасет. Вот один из алгоритмов: капча в режиме реального времени передается на посещаемый дружественный порно-сайт и там его посетители, стремящиеся получить доступ к эротическим картинкам или видео, скажем, должны распознать капчу. Они ее распознают, код передается на изначальный сайт и вводится в форму. Вот так :)
То есть трудятся уже люди, а не роботы.
Слышал и о таком методе, счас подумал и не придумал способа борьбы, даже самого ненадежного. Может кто нибудь знает? Всякие проверки http ответа по моему не катят, т.к. робот может обеспечить абсолютную маскировку, выступая пользователем он копирует изображение капчи выкладывает его на порносервер(сервер кряков, файл сервер) оттуда получает ответ и уже его передает. Конечно можно пытаться обмануть бота скрытыми полями, но это уже в рубеж обороны, а как защитить от распознавания саму капчу?
Недавно совсем на хабре проскакивала картинка с оптической иллюзией, а что если оптические иллюзии использывать для капч? робот точно не пройдет, только если ИИ написать:)
А ведь это гениальная и изящная идея которая сильно ударит по спамерам.
Вместо радиокнопок лучше использовать ввод текста. Только такой метод должен использоваться на редких для одного пользователя действиях действиях, например при регистрации.
На картинках можно отображать самые известные предметы, названия которых неимеют синонимов ни на родном языке ресурса ни на английском (изображение автомобиля например неподойдёт).
Вместо радиокнопок лучше использовать ввод текста. Только такой метод должен использоваться на редких для одного пользователя действиях действиях, например при регистрации.
На картинках можно отображать самые известные предметы, названия которых неимеют синонимов ни на родном языке ресурса ни на английском (изображение автомобиля например неподойдёт).
капча
[:|||||:]
a) боян
б) не боян
в) ретро
[:|||||:]
a) боян
б) не боян
в) ретро
2 варианта это 50% на попасть на угад.
За первые два раза робот вычислит соответствие картинки ответу. Или вы будете генерить кошку каждый раз? :)
Здесь всего два варианта ответа, и робот может тупо выбирать случайный вариант и этого ему хватит. Даже если вариантов будет 20, то 1/20 правильных ответов - это тоже неплохо, а вот человеку уже будет очень сложно
Так давайте возьмём 20 вариантов, но не радиокнопок, а чекбоксов. На картинке от 1 до 20 животных: каждое из 20 возможных (кошка, собака, жираф, зебра, рыба, тигр, олень, кролик...) либо появляется, либо нет. Вопрос - отметьте галочками животных, которые есть на картинке. Имеем 2^20-1 = 1048575 комбинаций. (Совсем пустую картинку лучше исключить, чтобы не запутать пользователя.)
Фух... дочитал.
На самом деле все просто. Хабрачеловек на вопрос "Кошка или собака?" ответит - НЛО ))
На самом деле все просто. Хабрачеловек на вопрос "Кошка или собака?" ответит - НЛО ))
прогресс каптчи ведет к прогрессу Искусственного Интеллекта. айс. :)
Очень понравилась идея, захотел реализовать, но возникла проблема, может быть я ошибся с чем-нибудь?
Итак, если мы используем определенное множество изображений, для примера 3 или 4, то при сохранении этих изображений получается разный размер картинки. Тогда для создания робота необходимо просто вычислить размеры картинок вариантов и все.
Согласен с тем, что никто не будет изменять работу роботов для отдельного сайта, но если он очень популярен? Тогда этот механизм не подойдет.
Итак, если мы используем определенное множество изображений, для примера 3 или 4, то при сохранении этих изображений получается разный размер картинки. Тогда для создания робота необходимо просто вычислить размеры картинок вариантов и все.
Согласен с тем, что никто не будет изменять работу роботов для отдельного сайта, но если он очень популярен? Тогда этот механизм не подойдет.
Увы, для разгадывания капчи могут быть использованы и непосредственно человеческие ресурсы.
Идеальная капча должна быть разрешима (человеком) только в контексте сайта, на котором она установлена, и терять смысл будучи от сайта оторванной. Но таких еще не видел.
Идеальная капча должна быть разрешима (человеком) только в контексте сайта, на котором она установлена, и терять смысл будучи от сайта оторванной. Но таких еще не видел.
М-да, дожили, человек с машиной справиться не может :))
Идея в текщем виде плохая. Прежде чем писать такую каптчу следует подумать над тем как работают спам боты.
Боту пофигу сколько запросов отпарвить. И если у Вас всего ДВА варианта ответа, то 50% бот запросов будут проходить.
Боту пофигу сколько запросов отпарвить. И если у Вас всего ДВА варианта ответа, то 50% бот запросов будут проходить.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Captcha: Кошка или собака?