Итак, свершилось то, чего так долго ждали некоторые посвященные блоггеры. Я открыл для всех желающих
Parasite Eliminator – сервис и плагин для Wordpress, благодаря которым в моих блогах нет ручного спама.
10 ноября 2008 года – это черный день российских блогоспамеров (у зарубежных будет другой черный день, я еще не знаю, когда сделаю международную версию плагина).
Как оно работает
Очень похоже на антивирус + файрволл. Есть черные и белые списки, которые можно обновлять с серверов (на случай DDoS есть резервный сервер). Списки хранятся локально, в них можно добавлять URL или же исключать оные. Можно даже свои сервера поднимать, если знать формат обновлений.
Кстати, сейчас в черном списке уже более 1000 доменов.
Новые комментарии «сканируются на лету». Если есть ссылка из черного списка, то комментарий отправится модератору или прямиком в спам. Особо отмечу, что мой плагин ничего сам не удаляет. Только помечает.
Если же спамерский URL нам неизвестен, то он все равно не будет показан поисковым системам. Пройдут те ссылки, которые есть в белом списке. Скажем, если доверяет блоггер паре десятков своих знакомых блоггеров, то адреса их блогов включает в белый список. И только эти URL будут показаны. Прочие будут скрыты до поры.
Есть и сканер всей базы. Скажем, успел кто-то проспамиться, пока в базе не было его URL. Это не повод оставлять мусор в блоге, даже если ссылки не были показаны. Можно запустить сканирование вручную или по расписанию. Будут проверены все комментарии в базе. Проверка, кстати, осуществляется очень быстро.
И пополнение базы теперь будет осуществляться еще быстрее. Участники сообщества бета-тестеров уже присылают мне спамерские URL из своих блогов. Образуется антиспамерская паутина: нагадил спамер в одном из блогов сети — его спамерские комментарии пропали отовсюду.
Пикантности ситуации добавляет то обстоятельство, что все спамерские URL, сплоги и целые сетки дорвеев, которые я вскрыл, будут переданы в «Яндекс», «Гугл» и другие поисковые системы. Если представители поисковых систем захотят получить алгоритмы вскрытия спамерских сеток, с удовольствием рассмотрю предложения.
Пока я лишь один раз сдал такую сетку, 30 дорвеев в зоне RU вылетели за один апдейт. Остальных сдам на днях, всех разом, чтобы эффект прочувствовали.
В мире жЫвотных
Есть и еще два механизма для отваживания спамеров: дрессировка и отпугивание. Для дрессировки гоблинов есть отличная фича. Испытать ее можно так:
идите в этот пост и попытайтесь оставить там комментарий со ссылкой на
www.test.spam ;-)
Универсальный патентованный
графический отпугиватель блогоспамеров – тоже интересный артефакт, заряженный особой магией™. Он будет набирать свою силу со временем. Чем больше блоггеров покажут спамерам такие значки, тем больше спамеров будут о них знать и обходить блог стороной. Проспамившись в защищенном блоге, можно попасть в черный список и лишиться сотен своих уже оставленных комментариев.
Первый в мире антиспамерский сервис для спамеров
Для убогих блогоспамеров тоже есть цацка. Красный список опасных блогов, который можно скачивать, и загонять в свои программы, чтобы не нарваться на блог, из которого прямой путь в черный список и на стол модераторам поисковых систем.
Как все начиналось
В свое время, когда я открывал «
Микромаркетинг» или
блог студии Made, я сразу же установил туда
AuthImage и
Math Anti-Spam соответственно. Автоматический спам не проходил зато спамеры косили под нормальных людей и писали, «как нечеловечески сложно» ввести слово из 4 букв.
Но появились недочеловеки, которые занимались ручным спамом в блогах. О заказчиках такого спама я уже писал в свое время. С упорством истинного дебила они пытались отложить свои личинки то в одном блоге, то в другом, то у моих клиентов.
Нужно было какое-то средство, которое позволило бы централизованно чистить от ручного спама сразу все мои блоги. Тогда я и решил, а почему бы не вести базу этих уродцев? Приходит спамерский комментарий, я URL в базу заношу, и все мои блоги становятся иммунными к этой каке.
Количество спамерских доменов ограничено, задача решаема силами даже одного человека. Поначалу я хотел использовать штатные средства Wordpress (там можно ввести домены в стоп-лист), но, увидев код движка, понял, что работать это просто не будет. Не сдюжит. Проверить, скажем, тысячу комментариев по нескольким тысячам доменов за время работы скрипта будет просто нереально.
Почитав про PHP и MySQL, да посоветовавшись с
Алексеем и
Иваном, приступил я к проектированию, попутно придумав и реализовав алгоритм раскручивания сплог-сетей, которому позавидуют «Яндекс» с «Гуглом».
Через некоторое время была готова первая версия для закрытого бета-тестирования.
Первые версии плагина работали весьма быстро, но иногда глючили. Вечная память комментариям в блоге Антона Попова, одного из первых бета-тестеров и слава бекапам, из которых комментарии были восстановлены.
Серьезные баги я устранил оперативно, и плагин работал на моих блогах исправно. В силу недостатка времени, я немножко его подзабросил, но вот за эти выходные усилием воли «дожал», наконец и сам плагин, и сайт плагина. Заходите, скачивайте, тестируйте.
Связка
Math Anti-Spam и
Parasite Eliminator работает великолепно.
Как вы можете помочь правому делу борьбы с ручным спамом в комментариях:
- Тестировать на разных версиях Wordpress, в разных условиях. Сейчас работоспособность подтверждена в разных сборках, от 2.0.4 до 2.6.3
- Отловить баги и уязвимости в Parasite Eliminator, если там такие еще остались.
- Отловить неоптимальные места в коде.
- Рассказать знакомым блоггерам, чтобы пользовались.
- Рассказать знакомым спамерам, чтобы боялись.
- Сделать обзор плагина у себя в блоге.
- Присылать мне образцы спама с URL, которых нет в базе.
- Сделать аналогичный плагин для других блоговых движков.
- Принять участие в программе «Красный список».
Update: спамеры-то зашевелились!
Уже пакостить пытаются.
И еще в статистике появились заходы с закрытых спамерских форумов.
Update2: основной сервер даже не пингуется
Ну да на этот случай я предусмотрел
запасной аэродром.
На этот период все установленные плагины автоматически переключаются на обновления с этого запасного сервера.
И, конечно же,
зайти и скачать плагин с «Народа» можно и сейчас.
Оказалось, что это не DDoS, а в датацентре меняют большую и важную железку. Другого времени не нашли.
комментарии (120)
Читая статью с начала думал что вы «изобрели велосипед» сделав просто русский аналог Akismet, а оказалось что у вас оно вроде бы поинтересней реализовано. Думаю что у вашего проекта большое будущее, а с ним и у Российской блогосферы ;)
Но главное — в моих блогах действительно нет ручного спама (поначалу, правда, специально ломились, чтобы «показать неэффективность».)
А вот пример типичного убитого спамом комментирования:
ownthesite.ru/2008/05/11/wordpress-251-lecactus/#comments
А конфликтовать с включенным Akismet не будет?
Мой плагин ничего не стирает, только помечает как спам комменты, содержащие спамерские ссылки. Разве что Akismet сам прибьет то, что отправлено на модерацию было.
По-моему, нужно просто исключить поле URL в комментариях как класс. Зачем оно нужно? Если кто-то захочет дать линк на свой сайт, он его даст в поле письма. А втыкать его в каждый комментарий не нужно.
Человек по ошибке принимает меня за спамера и помечает мой сайт как спамерский. Заодно из Яндекса благодаря вам вылетают два десятка зарегистрированных на меня же доменов, ни один из которых никогда не рекламировался спамом.
Какая защита от возникновения подобных ситуаций? Ведь здесь одно «ложное срабатывание» — смерти подобно.
Если же ссылка приходит мне для добавления, я сперва ее ставлю на рассмотрение. Если это не явный дорвей, сплог и т.п., и есть сомнения — я ее не включаю в черный список.
И ссылки принимаются только от доверенных блоггеров. А у меня есть целая сеть «ловушек», куда идиоты-спамеры сами фигарят свои домены, думая, что всех перехитрили ;-)
Другие ваши домены никуда не вылетят, кстати. Ведь база спамеров — это база доменов, по которым спамят.
Вы по наводке идете проверять мой сайт, но обнаруживаете вполне интересный блог, СДЛ. Сайт идет в черный список или нет?
я бы отправил в черный список
2) Если в белый список, то значит, ukr.net будет спокойно продолжать спамить в блогах? Ведь это крупнейший интернет-провайдер и портал.
Если коротко — то я предлагаю его расценивать не как вознаграждение комментатору, а как способ отправить автору блога свой блог для ознакомления. И, если автор блога сочтет нужным, то откроет ссылку для своих читателей через механизм «белого списка».
ukr.net — не блог, добросовестным блоггерам незачем его вставлять в комментарии. Так что, однозначно в газенваген.
Могу бесплатно сделать вам перевод плагина/сайта. А в иностранных блогах вообще есть такая проблема?
ну и так пару словечек добавил из простого набора :)
Приятно смотреть на такую работу)
P.S. единственное что — домен ваш запомнить просто нереально:) По крайней мере, для меня.
В плане оформления порадовало отношение к типографике и безумно порадовала иконка «fuck off spamer» =) Вобщем молодец, как всегда (давно уже отсылаю заказсчиков за «где можно почитатать доступно на эту тему?» на микромаркетинг).
Срочно приобретите оружие самообороны. У меня плохое предчувствие…
Добавили электронную почту Parasite Eliminator в скрипт, который сейчас проходится по куче разных форумов и регистрируется там, оставляя наше мыло. Ну да это не страшно. Ящиков я могу заводить сколько угодно, а почту с радостью принимают сервера и антиспамерские фильтры «Гугла».
Сейчас идет 2-3 письма в минуту. Такими темпами скоро у меня окажется вся их база уязвимых форумов. Вот и монетизация сервиса ;-)
И еще в статистике появились заходы с закрытых спамерских форумов.
Заспамили спамеров своим мылом в форумах
Я не имел в виду стопроцентного спамерского сходства…
Спамеры оставляют сообщения на форумах, чтобы потом поисковые системы их индексировали…
для этого они
1) автоматически регистрируются на форумах
2) оставляют спам-сообщения
Вы же скриптом нарегили экаунтов чтобы спамеры проиндексировали Вас :)
ЗЫ
Только не надо минусовать, это ж не в укор сказано, я просто сравнил (при чем не без юмора)
Установленные плагины же без проблем скачивают, что надо, я как раз отслеживаю работу ;-)
В любом случае, спасибо за наводку ;-)
Задача была оставить комент с линком на определенный сайт :)
(пока автор не закрыл эту фишку)
Ситуация не в том, что он проиндексирует эту страничку, главное чтобы
количество проиндексированных адресов www.test.sp%61m добавляло рейтинга (ПР и ТИц) домену www.test.spam
я в этом не был уверен.
чтобы не было чего-то типа такого результата поиска:
www.test.spam — spam bla bla bla
www.test.sp%61m — spam bla bla bla
Я, кстати, в блоге у вас спросил, что делать, если кто-то решит подставить кого-то (были случаи) и начнет спамить от чужого имени? В акисмет есть возможность блоггерам вытаскивать из «спама» комменты, и впоследствии они будут и на сервере акисмета помечены как «не спам». А здесь нужно писать автору по каждому случаю, или наши локальные списки могут как-то использоваться?
1. Локально вы можете добавить все, с чем не согласны, в список исключений, но это будет, правда, только для каждого блога в отдельности.
2. Я сделаю механизм, который позволит при следующих обновлениях баз вытаскивать из спама ошибочно внесенные комментарии.
3. Пока нужно будет писать мне, но до сих пор, за несколько месяцев закрытого тестирования, только 2 или 3 домена оказались ошибочно внесены. И вот сейчас еще 2 нашлось. В остальных же случаях выяснялось, что ошибочно были оставлены спамерские комментарии, написанные «по теме», но ради очередной ссылки на очередной дорвей по строительной тематике.
Вот пример:
ownthesite.ru/2008/05/11/wordpress-251-lecactus/#comments
Заменил букву «a» в адресе на HTML Enitity. Все работает. Вот и вся магия.
Или предупреждалку, обнаруживающую такие фокусы и бьющую тревогу.
Если я помечаю в WordPress комментарий, как спам, он может автоматически заносится в чёрный список?
А заодно все долбаные линкопомойки, сплоги, и прочий хлам, который генерируют через РСС, а также СДЛ, которые бедные копирайтеры в поте лица за копейки делают.
Ну и отдельно (особо жестоко;) надо банить всяких SAPE-шников))
> И еще в статистике появились заходы с закрытых спамерских форумов.
)) Боятся или просто интересуются? Может их IP тоже на всякий пожарный записать?
p.s. А ведь вроде на ссылках в комментах ставят nofollow, в чем смысл спамить? Заманивать народ? И нафик тогда плагин, если для заманивания народа ссылку можнотпробелаимт писать, или через tinyurl
Возможно ли появление API вроде того, как сделано на recaptcha (там регистрируешься, получаешь у них персональный криптографический ключ...)?
Но вот на problog.ru человек написал, как в Movable Type списки импортировать.
Допустим, какой-то нехороший человек решил подставить своего конкурента и нанял несколько школьников, которые днями и ночами спамят ручными коментами в белых блогах, обходя капчи и «12+4». При этом в кач-ве урла оставляют сайт жертвы.
Как вы хотите бороться с такими ситуациями?
blog.parasite-eliminator.ru/development/kak-byt-esli-zaxotyat-podstavit/
Спасибо за сервис и плагин!
1) проверку текста и урла комментария на нахождение в черном списке
2) проверку урла комментария на нахождение в белом списке
3) обновление списков с сервера
Так? Или надо еще добавление урлов в список при подтверждении спамности? Пробежав код «по диагонали», я не нашел там отправки списка на сервер — оно там есть? Или я просто давно не брал в руки PHP? :)
1. проверка новых комментариев сразу при добавлении
— по черному списку
— по белому списку
2. сканирование всей базы
— по черному списку
— по белому списку
3. фильтрация URL с имени комментатора, если URL нет в белом списке
4. обновление списков с сервера
5. ручное добавление в локальные ч и б списки
6. локальные исключения из ч и б списков
Еще собираюсь добавить функциональность по извлечению из спама ошибочно добавленных комментариев.
Пока удобной функции отправки на сервер нет, шлют мылом :-) Но будет, как только разберусь с более важными вещами.
Может не нужно этот список вывешивать?
(спамит без ссылок — такчто фильтр не сработает)
да, не исключено, что некоторые, особо ущербные ментально кастрированные спамеры будут гадить специально. но практика показывает, что это не критично, надолго их не хватает, а автоспам можно будет заворачивать ;)
2. Затем я придумал способ вскрывать спамерские сетки превентивно.
3. Потом я искал спамерские комментарии у знакомых блоггеров.
4. Теперь присылают мне на рассмотрение.
Я все просматриваю своими глазами, в спам отправляются или явные сплоги да дорвеи, или иногда попадали блоги оптимизаторов, рекламировавших софт для генерации дорвеев. Впрочем, последних я уже разбанил.
Поэтому плагин в качестве одной из фич имеет фильтр и дрессирующий механизм.
Продолжаем поподнение базы спам URL
2.3.3 — не работает. Активирую — виснет.