Ars Longa, Vita Brevis

Очередной плагин для WordPress для борьбы со спамом

В очередной раз удалив десяток спамеров из базы и почистив комментарии от ссылок на порносайты и виагру, я серьёзно задумался о том, чтобы поставить CAPTCHA.

На Wordpress.org есть примерно с десяток плагинов для отсеивания спам-ботов, но использование чужого кода — это не наш метод, поэтому коллекция плагинов пополняется еще одним :-)

Помимо генерации случайного изображения, я воспользовался методом, описанным у Максима Покровского, заключающимся в создании элемента <input> с установленной через CSS visibility: hidden: спам-бот заполнит этот <input>, а пользователь — нет.

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

CAPTCHA защищает форму регистрации и форму отправки комментария; в случае с комментарием, изображение с проверочным кодом для зарегистрированного пользователя не показывается.

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

Скачать плагин SJCaptcha for WordPress.

Из плюсов: код плагина — всего 151 строка (включая пустые строки и комментарии).

Из минусов: все настройки зашиты в исходном коде. Но для версии 0.01 сойдёт :-)

PS: в css-файл используемой темы нужно добавить три строчки:

[-]
View Code CSS
.pvc {
    display: none;
}

Связанные записи

Комментарии к статье "Спамеры просто достали, или, Еще одна CAPTCHA для WordPress" (22) »

  1. [Апрель 7, 2008 12:43 дп] Vladimir:

    Ура, оно работает!!! :-)

    #1
  2. [Апрель 7, 2008 1:14 дп] Tigress:

    Действительно, работает! :-)

    #2
  3. [Апрель 24, 2008 12:46 дп] Fanta:

    А этот плагин работает для ВП-МЮ ??

    #3
  4. [Апрель 24, 2008 6:41 пп] Vladimir:

    Fanta, если честно, то с WP MU я его не пробовал… Но раз хуки одни и те же, то скорее всего, будет работать.

    #4
  5. [Май 21, 2008 12:07 пп] Vladimir:

    Внимание всем спамерам! Теперь у вас еще меньше шансов, ибо плагин был серьезно переработан:

    • зомби не пройдут — FCrDNS эффективно отсекает 90% спамеров;
    • спам-ботам задача очень сильно усложнилась — ”левые” почтовые адреса тоже не пройдут — плагин осуществляет проверку на существование A-записи для домена, указанного в email. При паранойе можно проверять наличие MX-записи (пока при её отсутствии в error log кидается warning);
    • серьезно модернизирован механизм генерации анти-спам-полей.

    Планируется:

    Плагин пока в стадии beta-тестирования, но пока что хорошо защищает страницы с высоким PR от виагры, детской порнографии и страхования.

    Скачать плагин SJCaptcha for WordPress

    #5
  6. [Май 27, 2008 3:14 пп] Viggo:

    Насколько неисповедимы пути твои… С максового сайта попал на сервис он-фейс, там среди новых участников привлекла внимание ссылка на сайт Всеволода, а уж там после просмотра вордперссовой темы увидел тех, кому интересно как создать сайт. И вот я здесь. Правда, здесь серьезные ребята, судя по текстам. Мне даже страшно стало. Но решил испытать эту фичу с борьбой со спамерами, мол что тут такого необычного. Вот сейчас отправлю это сообщение и узнаю…

    #6
  7. [Май 27, 2008 3:25 пп] Vladimir:

    мол что тут такого необычного

    На самом деле, здесь нет ничего необычного — просто результаты разностороннего анализа спама/спам-ботов, переведённые в код :-)

    Например, спам-боты пробуют автоматическую регистрацию (пройдет или нет) на абсолютно случайных email-адресах. Простое противодействие: проверка существования A/MX-записи для домена.
    Большая часть спама рассылается с инфицированных машин (зомби) — проверка FCrDNS их отсеивает.
    Другие боты рассылают спам, посылая “типовой запрос” — имя, email-адрес, сайт и комментарий. Игнорируя остальные поля. С этим борется доработанный метод, о котором я прочитал у Максима.

    Всем остальным - капча. Если пользователь имеет одобренные комменты (пусть даже он не зарегистрирован), капча ему показываться не будет.

    #7
  8. [Май 27, 2008 3:30 пп] Viggo:

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

    #8
  9. [Июль 31, 2008 10:17 дп] AleXXX:

    Спасибо! Работает! Правда какие-то проблемы с PTR для моего IP, пришлось эту функцию отключить.

    #9
  10. [Июль 31, 2008 10:26 дп] Vladimir:

    Замечательно! А что касается PTR-записей, то провайдерам за незнание RFC нужно все выступающие части тела отрывать :-)

    #10
  11. [Август 24, 2008 11:29 пп] Igor:

    Спасибо за полезный плагин. Поставил себе на блог, красиво и полезно. Написал про него у себя, заходите http://www.lokl.ru/wp-upgrade/ :). Очень порадовала многоуровневая защита и ориентация на посетителя.

    #11
  12. [Сентябрь 6, 2008 10:14 дп] SJCaptcha Lite: невидимая защита от спама | Ars Longa, Vita Brevis:

    [...] по спам-ботам, я решил несколько видоизменить плагин SJCaptcha — причем в сторону [...]

    #12
  13. [Сентябрь 22, 2008 9:42 пп] Kaban:

    Владимир, спасибо за плагин :)
    На MU, кстати, тоже работает нормально.

    #13
  14. [Сентябрь 22, 2008 9:51 пп] Vladimir:

    Kaban, я рад, что Вам понравилось! :-)

    Будут пожелания/вопросы — пишите, не стесняйтесь.

    #14
  15. [Сентябрь 29, 2008 9:40 дп] Хан Кирилл:

    Привет. А где можно посмотреть в действии этот плагин?

    Достали спамеры - запарился уже чистить на своем именном блоге. На всех других с более высокими характеристиками - СПАМА 0

    #15
  16. [Сентябрь 29, 2008 9:53 дп] Vladimir:

    Кирилл, посмотреть можно здесь.

    #16
  17. [Октябрь 22, 2008 7:37 пп] a-nesterov:

    Спасибо, надо будет себе поставить. Спамеры заколебали.

    #17
  18. [Октябрь 27, 2008 12:22 пп] Роман:

    А в бан к поисковикам за скрытую форму не попадешь?
    Посмотрел на Яше http://yandex.ru/yandsearch?text=url%3D%22http%3A%2F%2Fblog.sjinks.org.ua%22&stpar2=%2Fh0%2Ftm8%2Fs2 результат не впечатляет. Хотя возможно сайт нужно добавить через аддурилку.

    #18
  19. [Ноябрь 5, 2008 9:16 пп] seoart:

    у меня не работает:(

    #19
  20. [Ноябрь 10, 2008 1:36 пп] Vladimir:

    Seoart, что именно?

    Роман, не попаду :-) А URL для поиска в яндексе, часом, не такой?

    #20
  21. [Ноябрь 14, 2008 12:56 пп] curt:

    УРЛ для поиска в Яндексе должен быть такой он покажет все страницы в индексе яши :) а тот который выше показывает все блоги с линком на тебя… :)

    #21
  22. [Ноябрь 15, 2008 10:29 дп] Роман:

    Извините, ошибся. Для просмотра кол-во страниц в Яндексе используем следующий запрос - url=”www.mysite.ru/*”. Но есть одна загвоздка, дело в том, что у Яндекса не всегда вовремя выполняется синхронизация БД. В следствии чего, разные сервера показывают разные результаты.

    #22

RSS лента комментариев к этой записи. TrackBack URL

Оставить комментарий к записи "Спамеры просто достали, или, Еще одна CAPTCHA для WordPress"

Изображения должны быть включены!

XHTML: Вы можете использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, Вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя