Плагин Anti Spam Image. Новый подход

Рубрика: WordPress -> Плагины и хаки
Суббота, 24 марта 2007 г.
Просмотров: 4928

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

В моей сборке WordPress уже есть такой плагин - «Anti Spam Image» и многие его используют. Однако, существуют специальные спамерские программы, которые позволяют определить код на картинке и все-равно автоматизировать отправку спама.

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

Вот пример картинки: - этот код нужно повторить в специальном поле. Уверен на 100%, что вы укажете «70с080с9»... и будете неправы. ;)

Правильный код: «7с8с». А все дело в том, что рядом с картинкой я указал комментарий: красные символы (все четные) вводить не нужно. Таким образом, любой, кто не знает этого комментария, обязательно ошибется в повторении этого кода. Очевидно, что спамерская программа, даже если и распознает код, то распознает все символы. ;)

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

Думаю, что идея понятна и её можно развить по своему усмотрению (например указать комментарий на китайском, чтобы только китайцы смогли посылать комментарии :razz: ).

Плагин скачать можно с моей сборкой WordPress 2.3.3.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Комментариев: 87

  1. 2007-03-24 в 16:23:51 | Оптимизатор (анонимно)

    Также еще проще можно сделать вот как: ввести простейшую строчку с переменной - например - введите мое имя (все в курсе что maxsite.org - Максим), ну а спаммерский бот естественно, этого не знает.

  2. 2007-03-24 в 21:55:18 | .flint (анонимно)
    Также еще проще можно сделать вот как: ввести простейшую строчку с переменной - например - введите мое имя (все в курсе что maxsite.org - Максим), ну а спаммерский бот естественно, этого не знает.

    А почему бы случайному пользователю не подумать, что тут дело не в имени, а в сочетании "максимум" и "сайт"?

    Кстати, у меня уже полгода на ура работает такая система: когда человек впервые комментирует запись, ему на e-mail отсылается просьба подтвердить комментарий. В последующие разы, комментарии добавляются сразу и без проблем: e-mail лежит в базе данных, как безопасный. В общем, немножко неудобный способ, но зато работает только единожды, тогда как капчу нужно подтверждать каждый раз.

  3. 2007-03-24 в 22:05:41 | Максим (анонимно)

    Дело в том, что подтверждение по email спамеры обходят уже без проблем.

  4. 2007-03-24 в 23:10:25 | kibik (анонимно)

    На картинке не должно быть букв — очень неудобно переключать раскладку.

  5. 2007-03-25 в 00:29:44 | mekal (анонимно)

    да да, если зделаешь этот же плагин, но без буков, что-бы ОНЛИ цифры будет гараздо удобней, а то раскладку менять приходится.. а это кумарит, линивые мы smile

  6. 2007-03-25 в 02:58:37 | Антон Скоробогатов (анонимно)

    Люди с альтернативным восприятием цвета в расчет не берутся... Жаль... На этой идее можно построить капчу, которая будет отсекать не только ботов, но и ненужных посетителей smile Например, введите 2-й, 3-й и 5-й члены последовательности чисел Фибоначчи smile

  7. 2007-03-25 в 09:20:55 | Паша (анонимно)

    А у меня есть другое предлоэжение. Согласитесь, отфильтровывать не так уж и просто. У меня например плохое зрение.

    Почему нелься сделать контрольный вопрос? на yeghbvth 2+2=...

    ??

  8. 2007-03-25 в 10:23:42 | Максим (анонимно)

    Раскладка, это дело наживное smile. У меня по-умолчанию английская. :wink:

    По цифрам. Вообще правильный код строится не через rand, а на основе сессии (номер + md5) - из-за этого невозможно сразу же определить будущие символы.

    Паша, можно сделать и по вашему варианту. Есть вариант вообще от кода отказаться, а выводить несколько картинок, на которых коментатор должен будет выбрать, например только кошек. Вариантов много, мой лишь один из возможных. Главное, что он уже рабочий и без проблем устанавливается в WordPress. rolleyes

  9. 2007-03-25 в 10:26:06 | Максим (анонимно)

    Антон, можно еще указать, что нужно ввести 1-й, 3-й, 5-й и 7-й символы. Я специально сделал между ними такое растояние, хотя символы немного "гуляют".

  10. 2007-03-28 в 11:18:07 | Peter A. Shevtsov (анонимно)

    Пишу во второй раз и опять не знаю пройдёт ли мой комментарий -- у меня нарушение цветовосприятия. Так что читайте "Dive into accessibility" Марка Пилгрима и не занимайтесь ерундой!

  11. 2007-04-05 в 10:27:52 | theUg (анонимно)

    Есть, вообще, гениальное расширение — Raven’s antispam. Принцип работы такой — если у юзверь агента включен яваскрипт (для удобства также, если зарегистрированный пользователь — проверка не идёт), то сообщение проходит. Если яваскрипт отключен (боты пока без жабаскрипта оперируют), появляется простая текстовая капча. Работает замечательно. Единственное противопоказание — AJAXовые комментарии.

  12. 2007-04-05 в 10:31:07 | theUg (анонимно)

    P. S. Ошибочка с тэгом вышла вверху, простите великодушно.

    А насчёт цветов, выбор архизамечательный — краснозелёная дисфункция зрения — самая распространённая (10% мужчин, если я не ошибаюсь). ;)

  13. 2007-04-17 в 12:36:12 | Русский (анонимно)

    Отличное решение smile Имхо лушее в этом плане из всех что я нашел для ВП

  14. 2007-05-16 в 16:04:29 | Saminsky (анонимно)

    Прошу прощения, за тупость , плагин я поставил, а как поставить кнопочку и капчу в поле комментирования??

  15. 2007-05-17 в 10:23:17 | Максим (анонимно)

    Она сама появится. Разлогиньтесь и увидите. smile

  16. 2007-05-24 в 07:06:02 | :валерча: (анонимно)

    у меня таже проблема, разлогинился, но поле ввода и имейдж не появились...

  17. 2007-05-24 в 17:04:39 | Murevich (анонимно)

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

    почему бы просто не предложить посетителю ввести в поле сегодняшний день недели - т.е. слово "понедельник" "вторник" ... ?

    Введите день недели? и поле для ввода.

  18. 2007-05-27 в 14:28:05 | Вадим (анонимно)

    однако плагин, который стоит у Макса отличается от того, что предлагается скачать ))

    где взять с красными/верхними символами? ))

  19. 2007-05-31 в 17:48:39 | karagodin (анонимно)

    А как эту картинку выводит в других темах вордпресса? у меня только в дефал-те она появляется, а в других нет. Почему?

  20. 2007-06-07 в 15:02:17 | Dimox (анонимно)

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

    Максим, у вас наблюдается такая же тенденция или обратная?

  21. 2007-06-07 в 16:23:46 | karagodin (анонимно)

    2 Dimon: такая же проблема.

  22. 2007-06-07 в 16:45:54 | Максим (анонимно)

    У меня количество спама сократилось до нуля. Я, конечно не считаю, тех, кто вручную добавляет рекламу в свои сообщения. Поставьте плагин просмотр спама и сразу увидите на какие адреса он идет. Скорее всего это пинги и тркэкбаки. Отключите их у этих записей.

  23. 2007-06-07 в 17:03:37 | Mixa (анонимно)

    А как плагин привязать к коментам? Где код?

  24. 2007-06-07 в 20:15:42 | Dimox (анонимно)

    2 Максим: тогда дополнительный вопрос: а есть разница в эффективности самой первой версии вашего плагина и той, которая сейчас выложена? (у меня сейчас стоит первый вариант)

    P.S. За совет по установке плагина просмотра спама спасибо.

    P.P.S. Кстати, и пинги, и трэкбэки вообще отключены.

  25. 2007-06-07 в 20:19:04 | Максим (анонимно)

    У меня сейчас вообще последний вариант, который я добавил в сборку WordPress 2.2. У меня спам исчез, как я поставил версию, которая в этой заметке.

  26. 2007-06-07 в 20:22:19 | Dimox (анонимно)

    Ясно, спасибо.

    Под "которая сейчас выложена" я как раз имел в виду ту, которая идет в сборке WP 2.2.

  27. 2007-06-11 в 15:33:54 | Dimox (анонимно)
    Поставьте плагин просмотр спама и сразу увидите на какие адреса он идет. Скорее всего это пинги и тркэкбаки. Отключите их у этих записей.

    Максим, спешу Вас поблагодарить.

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

    Спасибо еще раз!

    Всего наилучшего.

  28. 2007-06-11 в 16:24:02 | Mixa (анонимно)

    Блин, я рад, шо здесь все все понимают, но мне может кто-то сказать, как вызывать форму с картинками в шаблоне комментариев?

    На страничке оригинального плагина дают

    ID); ?>

    но с плагином Макса, это, похоже, не работает...

    Я слепой или тупой?

  29. 2007-06-11 в 16:26:47 | Mixa (анонимно)

    код не хочет вставляться...

  30. 2007-06-11 в 17:54:22 | Dimox (анонимно)

    Чтобы выводилась форма с защитным кодом, в шаблоне комментариев должна присутствовать такая строка:

    ID); ?>

    (без пробела после первого знака)

  31. 2007-06-11 в 20:24:12 | Максим (анонимно)

    Просто активируете плагин, он автоматом появляется. Если нет, то проверьте на шаблоне default. Если там работает, значит разбираетесь со своим файлом comments.php

  32. 2007-06-13 в 06:59:34 | karagodin (анонимно)

    Макс, а как в версии WP 2.2 отключить трекбэки? Тот твой плагин спрасывает пинги, а как с трекбеками-то быть?

  33. 2007-06-14 в 05:48:15 | Alex7Kom (анонимно)

    У меня почему-то изображение генерируется с ошибками, и, следовательно, не отображается... Блог тестирую здесь: http://source-mods.jino-net.ru/blog/

    Что делать?

  34. 2007-06-14 в 09:48:34 | Максим (анонимно)

    Может быть на сервере не работает gd-библиотека.

  35. 2007-06-14 в 17:09:22 | Mixa (анонимно)

    А єто наверное проблема темы - у меня тоже Фрешли, сначала плагин вообще не работал, на второй день заработал, но выдает вот что http://mixa-blog.org.ua/wc/water-closet.html#respond бред какой-то! И где там символы?

    Короче, есть другие аналогичные плагины?

  36. 2007-06-14 в 20:16:26 | Di9 (анонимно)

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

    и это на всех шаблонах LOL

  37. 2007-07-02 в 23:42:39 | Vselen (анонимно)

    Поставл щас самый новый вордпресс... плагин работает как ни странно, правдо пришлося подрубить gd-библиотку...

  38. 2007-07-11 в 23:51:14 | Алексей Новиков (анонимно)

    У меня капча от плагина AuthImage. Спама нет вообще. От ручного спама спасает настроенный списко стоп-слов для отправки на премодерацию + жесткая политика модерации того, что проскочило.

  39. 2007-07-23 в 11:19:33 | Женя (анонимно)

    как так получается что в одном посте имеется защитный код к комментарию, а в другом нет?

  40. 2007-08-09 в 10:53:10 | kn (анонимно)

    У меня стоит тема "Vertigo Blue" (3-х колоночная) http://www.briangardner.com/themes

    WordPress 2.2.2 вашей сборки.

    Плагин не работает. Пробовал переключать в default-тему тоже самое. gd-библиотека на сервере работает.

    Помогите пожалуйста разобраться в чем проблема! Очень нужный плагин, а у меня не пашет…

  41. 2007-08-20 в 23:49:18 | kn (анонимно)

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

    Это как-то можно настроить, чтобы нельзя было чужим подписываться никами зарегистрированных на сайте пользователей?

  42. 2007-08-21 в 22:51:45 | kn (анонимно)

    И тишина...

  43. 2007-09-07 в 01:50:22 | Tapac (анонимно)

    Нашёл альтернативный вариант борьбы со спамом)

    Прочесть можно тут.

    Максим, если идея имеет право на жизнь, то могу попытаться адаптировать AJAX-Comment под твой Anti Spam Image.

  44. 2007-09-07 в 11:06:43 | Максим (анонимно)

    Интересно было бы. Только плагин антиспама бери из сборки WordPress - он там обновленный.

  45. 2007-09-07 в 23:17:04 | Tapac (анонимно)

    Всё оказалось довольно просто и сейчас у себя в блоге поставил твой плагин антиспама + ajax comment. Можешь там же и оттеститировать, если всё ок, то надо как-то связаться и решить - будешь ты добавлять в свои сборки эти плагины или нет. Тогда я тебе переслал бы и/или пояснил что и где менял.

  46. 2007-09-07 в 23:57:21 | Максим (анонимно)

    Работает супер! :cool:

  47. 2007-09-10 в 16:16:25 | Tapac (анонимно)

    Вот тут пост и ссылки на модификацию твоего плагина.

    Вся разница в добавленной функции checkCode. Она буквально пара строк, поэтому долго вникать не придётся.

  48. 2007-09-12 в 20:17:40 | Максим (анонимно)

    Спасибо, Тарас! Я посмотрю, что там получилось, нужно будет немного потестировать.

  49. 2007-09-14 в 23:50:04 | Eugeny Prokopyev (анонимно)

    Интересно x-rumer распознаёт эту капчу.

  50. 2007-09-29 в 13:11:23 | Вит (анонимно)

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

  51. 2007-11-08 в 09:10:38 | Алексей (анонимно)

    Добрый день!

    Вот собственно вопрос, кто использовал в купе с WP-Postratings 1.20 Русская версия? Рейтинг работает, а вот капча нет - не прорисовывается и не отображается поле ввода... соответственно не работает.

    Если кто сталкивался с подобной проблемой, подскажите ПЛИЗ!) :sad:

  52. 2007-11-11 в 12:00:50 | Gamer (анонимно)

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

  53. 2007-11-12 в 11:01:50 | Алексей (анонимно)

    Хм... Решилась проблемка с одновременным использованием WP-Postratings и данного плагина следующим образом: в anti_spam_image.php 35 строка, вместо

    if (isset($user_ID)) {

    исправил на

    if ($user_ID) {

    и все заработало. Еслия я не прав, жду комментариев!:wink:

  54. 2007-11-14 в 01:21:23 | Gamer (анонимно)

    Работает! Спасибо!

    Кстати, я заметил, что и до этого картинка появлялась, если проголосовать за пост и обновить страницу. Ну а теперь вообще все в шоколаде :smile:

  55. 2007-11-14 в 18:36:00 | Andrew (анонимно)

    Здравствуйте!

    Помогите разобраться.

    Я не силён в PhP, а хотелось бы чтобы плагин антиспам картинки был аналогичен тому, что на вашем сайте. Тот, что предложен для скачивания чрезмерно труден. Плагин выдаёт сложное изображение, его, действительно с первого раза даже трезвый не наберёт.

    Буду признателен за любую подсказку!

  56. 2007-11-14 в 19:41:35 | Andrew (анонимно)

    Прошу прощения.

    Я проявил не внимательность. В обновлённой версии вашего «вордпреса» этот плагин то, что надо!

    Спасибо.

    http://maxsite.org/wp-images/smilies/icon_sad.gif

  57. 2007-11-24 в 11:58:43 | crazyangel (анонимно)

    А почему плагин может не работать? Стоит у меня такой же как здесь (вводить нижние символы) и упорно валится в первый (слава богу тестовый) пост спам про виагру и валиум-шмалиум. Что делать? Усложнять?

  58. 2007-12-01 в 22:31:31 | MustLive (анонимно)

    Обращу ваше внимание на то, что данный плагин имеет Insufficient Anti-automation уязвимость. Которая позволяет обходить капчу. Как и оригинальная версия Anti Spam Image 0.5, на основе которой он сделан.

    Об уязвимости в оригинальной версии плагина я написал в своём Месяце багов в Капчах.

    MoBiC-25: Anti Spam Image CAPTCHA bypass

    http://websecurity.com.ua/1584/

    Уязвимость имеет место на не самых последних версиях PHP (на используемом на данном сайте PHP 4.4.7 она не проявляется). Поэтому пользователям данного плагина (особенно при использовании не самых новых версий PHP) нужно его пофиксить.

  59. 2007-12-03 в 02:54:26 | Максим (анонимно)

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

    Если дадите ссылку на более подробное описание проблемы (с кодом или профиксенную версию), буду признателен.

  60. 2007-12-12 в 04:29:58 | St.Lukas (анонимно)

    А как вам идея об интеракивных антиспам плагинах? С подписью: щелкните на так-то и так-то. Я думаю пользователям понравится, даже собираюсь сделать!

  61. 2007-12-16 в 01:17:51 | Дмитрий Дианов (анонимно)

    И все же, какой именно код нужно внедрить в comments.php для включения плагина? У меня тема Blueblog, в нее ничего не внедрилось...

  62. 2007-12-16 в 01:33:09 | Дмитрий Дианов (анонимно)

    P.S. на default все нормально.

  63. 2007-12-16 в 18:46:36 | Лютиков (анонимно)

    2 Peter A. Shevtsov: same shit :???:

    Цветная капча - зло. Мне приходится копировать картинку в IrfanView, там её увеличивать и рассматривать. Т.к. на мелкой я не могу понять какие символы красные. Кстати, почему цвет, в котором половина синего (#E40078) назван красным?

  64. 2007-12-17 в 22:47:11 | Вячеслав (анонимно)

    подскажите, как избавиться от символов типа (!"№;%:?*())?

    а вообще мне понравился вывод как на maxsite.org - дайте настройки или выложите измененный код.

    Заранее благодарю...

  65. 2008-02-03 в 11:44:39 | Denis (анонимно)

    Вопрос по прежнему актуалный: как принудительно влючить и выключить этот плагин из темы. Не на всех темах он работает. Прописать код в comments - он работает, убрать код из comments он работать перестает. Есть ли решение?

  66. 2008-03-07 в 01:23:44 | Олег (анонимно)

    У меня как-то странно получается в шаблоне... если в single.php перед:

    Идет вызов вывода рейтинга из плагина WP-PostRatings то картинка с кодом не появляется (и поле для ввода кода тоже не появляется).

    Если же убрать код рейтинга или переместить ниже вызова вышеуказанной функции, то появляется картинка с полем ввода кода :shock:

    PS. Скажите, а с WP Super Cache я так понимаю этот плагин работать не будет (там же кэшится все по страшному)?

  67. 2008-03-07 в 01:29:07 | Олег (анонимно)

    Сори, почему-то вырезало код, который я имел ввиду вначале, вот он:

    comments_template();

    (т.е. если до него вызывать WP-PostRatings - глючит, после него – не глючит)

  68. 2008-04-05 в 14:12:29 | Виктор (анонимно)

    Макс, измени старую картику в сообщении на новую, которая сейчас стоит. Я хочу рассказать читателям своего блога о твоем плагине, пусть будет информация актуальная.

  69. 2008-05-17 в 20:00:40 | aktuba (анонимно)

    У меня какая-то не понятная проблема...

    Код капчи выводится 2 раза: над и после формы комментирования.

    С чем это связано и как победить - я так и не понял :sad:

  70. 2008-05-17 в 20:02:01 | aktuba (анонимно)

    Думал ссылка будет и не стал ее вводить:

  71. 2008-05-17 в 20:04:16 | aktuba (анонимно)

    Мда... delphist.ru - может хоть так отобразиться =(

  72. 2008-05-19 в 11:16:33 | PaulRUS (анонимно)

    Я вообще не поддерживаю картинки - каптчи, ибо у некоторых отключен показ картинок, и приходится делать всё через цензура.

    Лучше сделать обычный текст, например сколько будет 2+2 (вместо цифр естественно переменные) - это намного удобнее, да и боты, помоему, заточены именно под картинки.

  73. 2008-06-03 в 00:01:50 | MVH (анонимно)
    У меня почему-то изображение генерируется с ошибками, и, следовательно, не отображается...

    Проблема в том, что в начале какого-то файла (скорей всего wp-config.php) втисался BOM. Собственно, надо его убрать (BOM появляется из-за блокнота виндового в основном и т.п. редакторов с плохой поддержкой юникода).

  74. 2008-06-03 в 00:03:30 | MVH (анонимно)

    P.S.: что касается плагина, то большим минусом является то, что в случае неверного ввода кода надо возвращаться назад и заново набирать сообщение, т.к. оно не сохраняется.

  75. 2008-09-23 в 12:13:24 | FlexZERO (анонимно)

    Спасибо за плагин, спамеры заманали

  76. 2008-09-23 в 22:08:43 | Komissar (анонимно)

    Громадное спасибо за простое и действенное (как я надеюсь, ибо все решения с Максайта ранее всегда были действенными!) решение). Вот бы ещё полную версию тоже прилагать, или инструкцию по инсталляции, ибо чайников от вордпресса будет сильно пугать одинокая ПХПжка в архивеrolleyes..

  77. 2008-09-25 в 19:29:13 | Андрей (анонимно)

    Спасибо! Работает замечательно. Спамеры обломались.

  78. 2008-10-04 в 16:59:14 | Юрий (анонимно)

    Огромное вам спасибо. А то эти спамеры достали...по 50 говнокомментов в день оставляют...теперь проблема решена

  79. 2008-10-04 в 18:43:02 | stepanoff (анонимно)

    Спасибо огромное, а то спам достал в каментах...

  80. 2008-11-12 в 09:08:06 | Артемий (анонимно)

    А вот еще один плагин для борьбы со спамом Honeypot.

  81. 2008-11-22 в 09:37:20 | Алексей (анонимно)

    Чтото не смекну, где конкретно можно стянуть версию в верхними/нижними символами, как на этой странице?

  82. 2008-11-22 в 10:02:07 | Алексей (анонимно)

    Upd. Решается так:

    Стянуть с этой страницы архив: http://maxsite.org/wordpress-233-maxsite-edition

    Правильная версия плугина в нём будет тут: wp-content\plugins\maxsite\anti_spam_image.php

  83. 2008-12-17 в 18:17:30 | Кинозритель (анонимно)

    to Максим

    Плагин не работает на версии 2.7. Есть в планах обновление плагина?

  84. 2008-12-17 в 19:26:03 | Максим (анонимно)

    Проверил у себя. Все работает.

  85. 2008-12-19 в 22:17:37 | Олешка (анонимно)

    Я немного переделал этот плагин: теперь в коде только цифры, цвета можно легко изменить, читабильность кода как по мне лучше. Скачать и посмотреть можно на моем сайте. :razz:

  86. 2009-02-14 в 13:24:28 | Alexander (анонимно)

    Отличный плагин! Сразу отсек всех спамеров. Спасибо!

  87. 2009-02-15 в 09:46:43 | Lomaks (анонимно)

    Ссылка на плагин битая :(