Спецвыпуск. Хрумер научился взламывать DCAPTCHA

Я всегда смеялся над владельцами блогов, которые ставят каптчу в виде картинки с трудно различимыми цифрами. Ведь практически рядом существовало отличное, гораздо более удобное со всех сторон решение – плагин Dcaptcha «Я не робот».

Всё гениальное просто, скажем автору большое человеческое спасибо. Тому, кто хотел оставить комментарий требовалось просто поставить галочку, всё! Никаких распознаваний и ввода цифр.

Но буквально недавно с периодичностью в час мне стали приходить всяческие однотипные комментарии, которые никак не могли быть оставлены человеком. Так происходило на «Тройской унции«, так происходило и на Антикорпоративе. Апогеем этого стал тот самый кошмарный комментарий «Test». У меня аж руки опустились, гребаный хрумер научился ломать эту замечательную каптчу.

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

Ан нет, Алексей Московский (я блог его читаю и вам рекомендую), сразу же предложил свое решение. Я его ниже приведу, комментирование работает после изменений в коде, но вот справились ли мы таким образом с хрумером, покажет только время.

Вот решение.

  1. Открыть файл плагина (/wp-content/plugins/dimoning.ru-captcha.php) в текстовом редакторе.
  2. Выполнить замену строки «dcaptcha_captcha1» на любую другую уникальную строку, например на «my_custom_id«.

Всего там замен я насчитал четыре, заменил все их на одинаковые слова из 12 букв :)

Ну что, боремся дальше. Как сказал Арбайтен на интервью Сеопульту (там скоро еще четвертая часть выйдет) «Спамить – значит разрушать людские ресурсы». А это последнее дело.


Опубликовать в twitter.com Опубликовать в своем блоге livejournal.com

Не останавливайтесь, читайте дальше:

Реклама:

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

Комментарии

Благодарю за упоминание моего блога:) Кстати, если хрумер научиться определять и эту модифицированную капчу, можно будет немного доработать плагин, например, чтобы использовался не чекбокс, а выбор из списка. Но, надеюсь, этим таки займется автор плагина.

Ну да, отпишу автору завтра, если ссылку не заметит :)))

Рано или позно научится. Все дело в алгоритмах решений – в современных анти-капчах они не реализованы. А логики достаточно даже минимальной – тест Тьюринга проходить такой програмке необязательно.

Кирилл, тебе надо написать свою мегапростую каптчу, я уверен, что ты справишься. Только вот какую идею придумать для нее??

А если сделать рандомную генерацию этой фразы для плагина? :)

этот комментарий отправлен для проверки на спамоустойчивость

чем тебе не подходит капча как у меня на блоге? еще не один автоматический комментарий не прошел, а в связке с премодерацией первого комментария и акисметом дает отличный результат.
а с DCAPTHA не очень работает. Если у многих поле есть со значение value=»0″ то что мешает его заменить на 1 автоматически?

как пример – комментарий со словами «этот комментарий отправлен для проверки на спамоустойчивость» я отправил в обход капчи. если полазить по другим сайтам и найти наиболее часто повторяющиеся варианты то можно легко на большинстве блогов обойти эту капчу.

Плагин классный, но почему-то вызвал ошибку на одном блоге (наверное в связке с другими плагинами) – пришлось снять. Каптча, где надо подумать никогда не взломаются :)

2 Sosnovskij: не согласен. абстрактную капчу не взломаешь, а логическую вполне.

Есть более изящный вариант работы с этой капчей. Нужно присваивать (и соответственно проверять) не 1, а какое нибудь слово. Как вариант, можно это слово генерить рандомно и класть в сессию, но это уже для более продвинутых.

Итак, простейший вариант
if ($_POST['dcaptcha_sess'] != ‘1′){
меняем единичку на что вашей душеньке угодно, это строка 21
document.getElementById(‘dcaptcha_sess’).value = «1″;
строка 64, меняем 1 на то что вы исправили выше.

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

Например вы хотите использовать слово test.
document.getElementById(‘dcaptcha_sess’).value = «t»;
document.getElementById(‘dcaptcha_sess’).value = document.getElementById(‘dcaptcha_sess’).value+»e»;
document.getElementById(‘dcaptcha_sess’).value = document.getElementById(‘dcaptcha_sess’).value+»s»;
document.getElementById(‘dcaptcha_sess’).value = document.getElementById(‘dcaptcha_sess’).value+»t»;

В общем все не просто, а очень просто… Если конечно программа для спама не понимает js.

Сразу заменил стандартные значения, и переименовал красный прямоугольник в синий. Пишут только люди.
Вообще, если капча не распространенная никто ее ломать не будет, т.е. лучше быть немного программистом и никому не давать свою разработку :) А ведь проверить человек это или программа не так уж сложно, надо только подумать, что делает человек.

2 Штудер: хм. тут чуть сложнее уже будет.
но достаточно будет добавить проверку на сборное значение в коде и все. ведь нужную регулярку построить не проблема для этого случая – куча стандартных названий. не помогут не замены названий цвета, не разброс по коду. можно насытить псевдо-значениями страницу, но это будет увеличивать вес страницы и скорость ее загрузки\обработки.
т.е. немного усложняем код антикапчи и все. тут даже скриптик на пыхе справится, правда такой скрипт для массового спама не подойдет.

BOLVERIN, под конкретный сайт заточится не проблема, проблемой будет сделать так, чтобы для всех работало. Со скриптом вообще можно повозится, например значение для хидден-поля не в текст страницы вставлять, а дергать аяксом.

Кстати возникла мысль, что для дкапчи не помешала бы админка в которой можно было бы настроить имена полей и проверяемое значение.

Штудер, лучше не усовершенствовать легковзламываемый вариант, а подумать над таким который недоступен машине не способной пройти тест Тьюринга :) И именно по этому меня интересуют абстрактные капчи.
В случае с DCAPTHA набор элементарных правил по проверке страниц дает возможность отослать спам-комментарий. Эти правила сделают програмку «тяжолой», но что мешает написать ее на жабе или асме(в клинических случаях)
Абстрактное мышление – это то что недоступно ни одному компьютеру, а только человеку. Это то что делает нас людьми. И именно это надежнейшая защита от автоматического спама.

BOLVERIN, а есть уже какие нибудь практические наработки? Желательно чтобы были не сложнее пары кликов мышкой?

А спам будет все равно. Школьников спамящих вручную ведь еще никто не отменял…

у меня на блоге стоит NCaptha – не верх гениальности, но просто и от спама защищает. еще один интересный вариант на слогер.нет(или как-то так) – там надо выбрать одно слово из 4-5 которое заканчивается или начинается на гласный\согласные.

2 Штудер: может лучше в аську перейдем? А то Трой меня матюкать будет за то что зафлудили ему блог :)

Не, всё нормально. Идет обсуждение по теме, я только рад!

Кстати, сейчас отпишу автору, все вот эти действия не помогли к сожалению, хрумер пробивает каптчу. То, что это хрумер, нет никакого сомнения.

2 Андрей Трой: яж и говорю – ставь такую же как у меня. не пробивает и для пользователей читабельна.
а тут глядишь мы с Штудером кооперируемся и напишем свою непробиваемую капчу :)

А я уже присматриваюсь :))))
А чего, напишите, вам будут такие респект и уважуха, что никому и не снилось. Сам понимаешь, актуальнее проблемы спама сейчас только свиной грипп :))

2 Андрей Трой: про свинной грипп жди – скоро сегодня-завтра допишу для унции статью :)

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

Опять же галочку димонинга можно каждый раз выводить в разном месте формы с разным именем. Программинг там копеечный.

я пока не очень страдаю от спама, но мне «я не робот» нравится, но больше всего я хочу чтоб был вид следующий (как жаль что пикчу не прикласть)

под постом нет кнопы «отпарвить» а есть три чекбокса «я не робот», «я робот», «я человек!» ставишь две галки, появляются чекбокс «да» с надписью «точно?!», ставишь галку появляется кнопа и надписью «да, да! шлём коммент!»

эээ, а не проще сам принцип поменять?

в любом случае есть реализованный плагин, который я с удовольствием использую: http://notcaptcha.webjema.com/ru/

а на блогшот спам не приходит, ну или почти. (тьфу, тьфу, тьфу).

Благодарю за совет! Работает.

Вот человек сделал три варианта капчи Dimoning http://jeder.ru/?p=101
Я поставил первый вариант, если что. День прошёл тьфу-тьфу без спама :)

MasterX, даже с динамически изменяющимися полями и позициями все равно есть определенные моменты которые всегда повторяются. Т.е. взлому подверженно.
Уж в самом запущенном случае можно эмулировать движение мышки – правда это не будет использоваться из-за слишком больших ресурсо-затратах.

А у меня на блоге вовсе нет никакой капчи. Просто стоят 2 плагина, они весь спам фильтруют, а нормальные комментарии пропускают. Я уже писал про это.

А я поставил модифицированный плагин DCAPTCHA.
Спама на данный момент никакого не наблюдаю. Если кому не в тягость – оставьте какой-нить коммент в блоге. Я проверял, но чет все равно не уверен, всё ли хорошо работает.
Кстати, вот этот плагин с переворотами картинок тоже прикольный. Если DCAPTCHA еще поломается, то его поставлю. Он хорошо спасает?

2 Воронежский жлоб: работают у вас комментарии.
У меня с такой капчой не прошло еще ни одного автоматического камента.
Трой, нормально? Не проходит у тебя спам теперь? :)

BOLVERIN спасибо за тест. У меня тоже вроде бы нет спама пока что. Будем отслеживать ситуёвину. Если пробьётся – сменю на этих милых зверят и утят :)

[...] -Хрумер научился взламывать Dimoning Captcha от Андрея Троя. В спец выпуске Андрей рассказал, как [...]

Ребята, да вроде пока нормально. Ну и прикольно так с картинками, комментаторов думаю напрягать не будет. Пока пусть будет Ncaptcha.

2 Воронежский жлоб
попробуй, мне кажется такие «неалгоритмизированные» капчи – это будущее. Или как экзотика Матановая капча.

2 Павел: ну тут вы загнули батенька. я врядли сам быстро решу эту фигню, поскольку благополучно профукал большую часть своей учебы,а среднестатистический пользователь вообще не решит. да и надо легкая и понятная капча, а не «матановые капчи»

Ну, матановая капча не зря именно на луркморе лежит))
Тут хоть первообразную от икс заставь людей поискать – отсеится половина, а то и больше.

2 Воронежский жлоб: Матановская капча – это откровенное меренье пиписьками. И это в стиле Уютненького, но надо узнать не кто помнит школьный курс по матемаотке и смотрел на доску в институте, а не робот ли этот посетитель.

Ребята, ставьте плагин http://antispambee.com/ и не парьтесь с капчами! Не пропускает автоспам и посетителей блога избавляет от заполнения ужасных капч.

[...] я предлагал Андрею Трою решение по усовершенствованию вышеуказанного [...]

Воспользовался вашим способом, не помогло =( Надо думать другое решение, DimonG пообещал выпустить новый плагин с заплаткой, надеюсь что по скорее это произойдет.

спасибо! работает, а спамеры достали

Оставьте комментарий

(обязательно)

(обязательно)