Ars Longa, Vita Brevis

Апрель 7, 2008

Спамеры просто достали, или, Еще одна CAPTCHA для WordPress

Рубрика: WordPress
Метки: , , ,
Vladimir @ 12:35 дп
RSS 2.0

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

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

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

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

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

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

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

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

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

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

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

.pvc {
    display: none;
}

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

  1. #1

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

    Комментарий от Vladimir — Апрель 7, 2008 @ 12:43 дп

  2. #2

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

    Комментарий от Tigress — Апрель 7, 2008 @ 1:14 дп

  3. #3

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

    Комментарий от Fanta — Апрель 24, 2008 @ 12:46 дп

  4. #4

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

    Комментарий от Vladimir — Апрель 24, 2008 @ 6:41 пп

  5. #5

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

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

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

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

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

    Комментарий от Vladimir — Май 21, 2008 @ 12:07 пп

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

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

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