Каков наилучший способ обнаружения спама в сообщениях PHP?

Я пытаюсь бороться с битвой пользователей, пытающихся связаться с другими пользователями и просить денег. Они, как правило, из Нигерии или Ганы.

Несколько вещей, которые я пробовал, полностью блокируют эти страны при регистрации на основе их IP. Я также пытался обнаруживать подобное содержимое сообщения и ограничивать количество сообщений, отправленных на 5 в день.

Являются ли их доступными PHP-классы, которые справляются с этим лучше или по-другому?

Это ежедневная битва для обнаружения и удаления этих пользователей на основе отправленных сообщений.

2
nl ja de
добавлено автор Dan Blows, источник
Вы пытаетесь заблокировать их, потому что считаете, что это «боты», заполняющие ваши формы? Или реальных людей?
добавлено автор adamdehaven, источник
Как насчет того, чтобы заставить пользователей регистрироваться перед отправкой электронной почты?
добавлено автор adamdehaven, источник
Akismet широко используется большинством блогов в WordPress и имеет несколько библиотек (например, библиотеку PHP5): akismet.com/development
почему бы не запустить spamassassin и другие специализированные инструменты фильтрации, а не перетасовывать все через php? Или вы пытаетесь фильтровать спам, перемещая систему через ваши скрипты?
добавлено автор Marc B, источник
Можете ли вы дать нам больше информации о вашем продукте? Похоже, что у вас какая-то доска объявлений.
добавлено автор Gustav Bertram, источник
Вы используете captcha?
добавлено автор Amir Bilal, источник
@Adam Они являются реальными людьми, но они вызывают другие члены за деньги.
добавлено автор user1216398, источник
@ h2ooooooo У меня нет блога wordpress, и похоже, что им нужен ключ Wordpress API для класса PHP
добавлено автор user1216398, источник
Это внутренние сообщения, отправленные между пользователями. Сайт больше связан с сайтом социальной сети
добавлено автор user1216398, источник

2 ответы

Обнаружение спама

Пол Грэм излагает теорию байесовского фильтра, который может отфильтровывать содержимое спама:

http://www.paulgraham.com/spam.html and http://paulgraham.com/better.html

Найдите PHP-код, который может выполнять байесовскую фильтрацию на блоках текста. Разрешить читателям сообщений «отмечать сообщение как спам» и использовать их для ввода байесовского фильтра. Скопируйте пользовательский интерфейс Gmail как можно больше, чтобы люди знали, что делать.

Как Google использует технологии в Gmail для борьбы со спамом:

http://googlesystem.blogspot.com/2007/10/how -gmail-блоки-spam.html

Другие идеи, чтобы держать варваров в рвом:

  1. Получите IP-адрес и/или идентифицирующую информацию спамера и проверьте базы данных спамера для соответствия, например: http: //www.spamcop.net/

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

  3. Когда спамеры достигают определенного порога жалоб, они должны заполнить Captcha для отправки сообщения. После того, как они достигнут другого порога, они должны заполнить Captcha и ждать рандомизированную задержку (которая увеличивается в зависимости от количества голосов против) для отправляемого сообщения. Цель здесь заключается в том, чтобы спамеры подождали, еще немного дольше, думая, что они просто ждут еще 30 часов или около того, сообщение будет отправлено. Вы можете тренировать обезьяну, чтобы подтолкнуть рычаг, пока они не умерли от голода рандомизированной наградой. Попросите спамеров потратить свое время, нажимая рычаг с рандомизированной наградой. Цель состоит в том, чтобы оставить небольшое окно открытым, чтобы спамеры не пробовали что-то еще. Медленно кипит лягушку, поэтому они не выпрыгивают.

  4. Остановите спамеры, сделав их сложными задачами. Налоговое время! Вы не можете остановить спам, вы можете только дросселировать спам. Поскольку становится яснее, что спамер является спамом, не просто блокируйте их, это просто переводит проблему в другую учетную запись. Сделайте обручи. Таким образом, они должны сделать капчу, а затем заполнить форму с кучей арифметических проблем, что занимает всего около минуты. Для повторных нарушителей увеличьте количество задач. Выберите кота из списка, добавьте эти цифры, повторно введите это сообщение без «e». Во что бы то ни стало позвольте им отправить электронное письмо, просто НАЛОГ. Таким образом, дросселирование количества спама.

  5. Для самых жестких повторных нарушителей, которые будут выполнять всю налоговую работу (или автоматизировали ее), Hell-Ban их, но только медленно и постепенно! Пусть спамеры считают, что они проходят через XX час. СПАМ спамеры, отправьте им ответы от своих целей, правдоподобные ответы, поэтому они думают, что они проходят, но на самом деле вы просто тратите свое время.

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

6
добавлено
Сообщения для людей обычно представляют собой сборники слов: D
добавлено автор Lightness Races in Orbit, источник
+1 за потрясающие статьи, которые вы связали.
добавлено автор Vlad Preda, источник
Вы, сэр, - злой вдохновитель. Я так использую это.
добавлено автор Captain Hypertext, источник

Используйте внешнюю службу, например Askimet . Это бесплатно для личного использования.

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

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

DBA - русскоговорящее сообщество
DBA - русскоговорящее сообщество
1 345 участник(ов)

Общаемся и обсуждаем темы, посвященные DBA, PostgreSQL, Redis, MongoDB, MySQL, neo4j, riak и т.д. См. также: @devops_ru, @kubernetes_ru, @docker_ru, @nodejs_ru Рекомендуем сразу отключить уведомления, чтобы пребывание здесь было полезным и комфортным.

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

MySQL
MySQL
995 участник(ов)

The group is about MySQL. For code use hastebin.com. Admin: @smlkw

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp