[dev] Антиспамер

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Аватара пользователя
_D_L_L_
phpBB 1.0.0
Сообщения: 4
Зарегистрирован: 30.12.2006 10:14

Сообщение _D_L_L_ » 25.01.2007 7:57

Siava

Черт, они плодятся на моем форуме как только энтот форум проиндексировался в поисковиках, аж не успеваю удалять...

То есть, переименование папки эффективно только до следующего визита поискового робота. :(

Аватара пользователя
The-eBook
phpBB 2.0.0
Сообщения: 230
Зарегистрирован: 11.12.2004 11:22
Откуда: Москва
Контактная информация:

Сообщение The-eBook » 03.02.2007 22:08

А я вот подумал, если бот использует конкретную страницу для регистрации и можно, как предлагал Xpert, подменять ячейки анкеты... а почему бы не сделать не автоматическую переадресацию на другой адрес, страницу, выпадающее окно? То есть чтобы туда попасть, нужно глазками прочитать линк в том месте, где была анкета. Можно генерировать страницу анкеты, чтобы адрес был уникальный для сессии.

Как такой вариант?
The-eBook
Проект электронных книг
www.the-ebook.org

Аватара пользователя
VladSity
phpBB 1.0.0
Сообщения: 2
Зарегистрирован: 08.10.2006 16:20
Откуда: Москва
Контактная информация:

Сообщение VladSity » 27.03.2007 12:15

Окончательный вариант для форума с регистрацией участников:

На моем форуме стоит подтверждение регистрации пользователя через e-mail (гости только читают) и данный мод Егора Наклоняева с первого поста с изменениями, которые внес Siava. Все работает отлично, спасибо огромное создателям мода! :) Было по десятку случаев спама в день, теперь уже несколько дней отдыхаю...
Советую всем, изменения вносятся несложно даже для дилетанта: два файла создать, в два файла добавить текст... :)
Еще я добавил текстовое предупреждение в соглашение о регистрации (lang_main.php). Спамеры, как правило его не читают, а обычному пользователю редко придет в голову постить первое сообщение со ссылками, обычно текст пишут... а уж если кому не повезет - что ж, лес рубят - щепки летят, пусть шлют малявы админу или читают предупреждения... 8)

Спасибо за мод! :)
Бумажные модели автомобилей. Фотодизайн.
www.vladsity.ru

diakin
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 27.03.2007 4:38
Откуда: C-Петербург
Контактная информация:

Сообщение diakin » 30.03.2007 12:40

Ну забанил я сам себя в процессе проверки...
И чо дальше-то делать? В форум не войти.. Млин..
:P :P

ладно, ладно.. :lol:

Не хочу получать писем и не хочу банить по IP.
Хочу просто удалять посты.
В крайнем случае банить IP на 5-120 мин.
Что нужно убрать из кода?


...
С баном разобрался.
Вот пример без бана и почтовой рассылки.

Код: Выделить всё

// This function check message for SPAM
function ad_cerber($message)
{
	global $ad_minpost, $ad_replace, $ad_list;
   global $userdata,$phpEx, $phpbb_root_path,$user_ip,$db,$board_config;
   if( $userdata['user_level'] == ADMIN ) return $message; // админу можно
    include($phpbb_root_path . 'includes/adcerber_config.'.$phpEx);
    $clear=str_replace($ad_list,$ad_replace,$message);// заменяем плохие слова в посте
    if($clear==$message) return $message; // Если после замены ничего не изменилось - спама не было OK. No AD or SPAM
    $mustdie=false;// флаг - убить спамера 
    if( !$userdata['session_logged_in'] )
   {
// убрал бан   
   }
   else
   {
        $user_id=$userdata['user_id'];
        $sql = "UPDATE " . USERS_TABLE . " SET user_active=0
            WHERE user_id=$user_id";
      if ( !$db->sql_query($sql) )
      {
         message_die(GENERAL_ERROR, "Couldn't change user status", "", __LINE__, __FILE__, $sql);
      }
      $sql = "DELETE FROM " . SESSIONS_TABLE . "
         WHERE  session_user_id=$user_id";
      if ( !$db->sql_query($sql) )
      {
         message_die(GENERAL_ERROR, "Shit happens");
      }
        $mustdie=true;
//      }
   }
   $clear="Это письмо содержало спам!!!";// заменяем весь текст письма, пошли они..
   $subject="Это письмо содержало спам!!!";// до кучи меняем заголовок

     if(!$mustdie) return $clear; // если флаг спама - возвращаем измененный текст письма
     if($userdata['session_logged_in']) message_die(CRITICAL_MESSAGE, 'You_been_blocked');
     message_die(CRITICAL_MESSAGE, 'You_been_banned');
} 

Хочу просто удалять такие посты.
Какую функцию можно для этого использовать ?

Добавлено спустя 35 минут 5 секунд:

Код: Выделить всё

function delete_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id)
Ну вот есть какая-то..
Какие параметрый ей надо передать для для удаления текущего сообщения?
WBR, Andrew
RQ Apache LogViewer
http://diakin.kwikphp.com/rqla.html

Feeling
phpBB 1.2.1
Сообщения: 21
Зарегистрирован: 17.03.2005 10:58

Сообщение Feeling » 30.03.2007 21:21

VladSity писал(а):На моем форуме стоит подтверждение регистрации пользователя через e-mail (гости только читают) и данный мод Егора Наклоняева с первого поста с изменениями, которые внес Siava. Все работает отлично, спасибо огромное создателям мода! :) Было по десятку случаев спама в день, теперь уже несколько дней отдыхаю...
+1! Поставила мод на свой форум 2 с небольшим месяца назад. За все это время - 520 банов!!! :shock: :D :D :D :roll:

А для неактивных юзеров у меня отдельно чистилка стоит - так что они все своевременно убиваются! 8)

Наша благодарность просто не имеет границ!!! :roll:

matvs
phpBB 1.0.0
Сообщения: 3
Зарегистрирован: 02.04.2007 19:13
Контактная информация:

Сообщение matvs » 02.04.2007 19:22

Цитата из
http://www.phpbb.com/support/documentat ... ction4_1_1
Delete this user? - To delete a user, check this box and click Submit. A deleted user's posts are converted to Anonymous posts with their old username as the name specified.
Раньше у меня стирались все сообщения спамера при стираниии имени (логина) спамера. А сейчас нет. :x Мне приходиться стирать все сообщения спамера вручную. :cry: Что делать? Как настроить форум так, чтобы все сообщения стирались автоматически при удалении спамера?
Помогите. :cry:
http://uportal.com.ua - каталог украинских ресурсов

Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 4168
Зарегистрирован: 11.01.2005 14:29
Откуда: Питер
Благодарил (а): 109 раз
Поблагодарили: 435 раз
Контактная информация:

Сообщение Siava » 03.04.2007 14:53

matvs
Этот мод не стирает все сообщения спамера.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
https://siava.ru/forum/ (phpbb 2.0.x, 3.1.x 3.2.x)

matvs
phpBB 1.0.0
Сообщения: 3
Зарегистрирован: 02.04.2007 19:13
Контактная информация:

Сообщение matvs » 03.04.2007 16:21

Этот мод не стирает все сообщения спамера.
Но у меня раньше все сообщения стирались автоматически вместе с логином спамера.
http://uportal.com.ua - каталог украинских ресурсов

Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 4168
Зарегистрирован: 11.01.2005 14:29
Откуда: Питер
Благодарил (а): 109 раз
Поблагодарили: 435 раз
Контактная информация:

Сообщение Siava » 03.04.2007 16:25

matvs
Наверно вы путаете с этим модом.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
https://siava.ru/forum/ (phpbb 2.0.x, 3.1.x 3.2.x)

matvs
phpBB 1.0.0
Сообщения: 3
Зарегистрирован: 02.04.2007 19:13
Контактная информация:

Сообщение matvs » 03.04.2007 18:36

Спасибо Siava , попробую установить Detector Bots

Добавлено спустя 1 час 11 минут 39 секунд:

У меня этот мод (Detector Bots) не работает. Вот я сам себе наспамил
http://uportal.com.ua/forum/viewtopic.php?t=76
и ничего не заработало. :(
http://uportal.com.ua - каталог украинских ресурсов

diakin
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 27.03.2007 4:38
Откуда: C-Петербург
Контактная информация:

Сообщение diakin » 04.04.2007 8:55

А что, в php strtolower с кириллицей не работает?
Образцы "плохих слов" забиты в нижнем регистре.
Хотелось бы сравнение сделать регистронезависимым..

Код: Выделить всё

    $clear=str_replace($ad_list,$ad_replace,strtolower($message));// заменяем плохие слова в посте
но что-то не срабатывает

Добавлено спустя 39 минут 20 секунд:

Кстати добавил аналогичную функцию для заголовка.
Обратите внимание, если
$mustdie=true;// флаг - убить спамера

то сообщение не добавляется в форум!

Также добавлена строчка
$clear1=strtolower($subject);
По крайней мере для латиницы работает

Код: Выделить всё

function ad_cerber1($subject)
{
	global $ad_minpost, $ad_replace, $ad_list;
   global $userdata,$phpEx, $phpbb_root_path,$user_ip,$db,$board_config;
   if( $userdata['user_level'] == ADMIN ) return $subject; // админу можно
    include($phpbb_root_path . 'includes/adcerber_config.'.$phpEx);
    $clear1=strtolower($subject);
    $clear=str_replace($ad_list,$ad_replace,$clear1);// заменяем плохие слова в посте
    if($clear==$clear1) return $subject; // Если после замены ничего не изменилось - спама не было OK. No AD or SPAM
    $mustdie=true;// флаг - убить спамера 
    if( !$userdata['session_logged_in'] )
   {
// убрал бан   
   }
   else
   {
....
Ну и кусок выше для $subject надо исправить
(functions_post.php строка 164)

Код: Выделить всё

	// Check subject
	if (!empty($subject))
	{
 $subject=ad_cerber1($subject); 		
		$subject = htmlspecialchars(trim($subject));
	}
	else if ($mode == 'newtopic' || ($mode == 'editpost' && $post_data['first_post']))
	{
		$error_msg .= (!empty($error_msg)) ? '<br />' . $lang['Empty_subject'] : $lang['Empty_subject'];
	}

WBR, Andrew
RQ Apache LogViewer
http://diakin.kwikphp.com/rqla.html

diakin
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 27.03.2007 4:38
Откуда: C-Петербург
Контактная информация:

Сообщение diakin » 01.05.2007 7:44

Ну в общем спамеры побеждены :lol:

установлены - Антиспамер,bbAntiSpam, Stop Advertisement bots

Всех с праздником!
WBR, Andrew
RQ Apache LogViewer
http://diakin.kwikphp.com/rqla.html

Аватара пользователя
snowman
phpBB 1.0.0
Сообщения: 1
Зарегистрирован: 26.05.2007 18:54
Откуда: г. Рыбинск
Контактная информация:

Сообщение snowman » 26.05.2007 19:08

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

diakin
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 27.03.2007 4:38
Откуда: C-Петербург
Контактная информация:

Сообщение diakin » 26.05.2007 20:55

Вот еще чего удумали

... уникальный способ рекламы в Интернете. С ее помощью можно рассылать объявления в личные сообщения пользователям форумов. Эффект от рассылки в "личку" куда выше, чем от рассылки на E-Mail или же оставления сообщений в темах форума (который с большой долей вероятности будут удаляться модераторами).

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

Кроме всего прочего рассылка в личные сообщения проходит незаметно для модераторов или администраторов форума в отличие от публикации в темы форума.

По сути, программа HACSoft PM - Bot поддерживает все типы форумов, т.к. различия в движках форумов описываются в специальных текстовых файлах (драйверах) и их легко настроить на работу с любым нестандартно модифицированным форумом. Кроме этого можно проводить рассылку через прокси-сервер. Рассылка идет сразу от нескольких пользователей, что позволяет обойти антифлуд форума.
WBR, Andrew
RQ Apache LogViewer
http://diakin.kwikphp.com/rqla.html

Аватара пользователя
go
phpBB 2.0.1
Сообщения: 261
Зарегистрирован: 13.03.2006 23:12

Сообщение go » 26.05.2007 21:04

Егор Наклоняев
avm
Siava
Спасибо,за моды и поддержку к моду.
выбрал и поставил вариант предложенный Siava
... результатов ждем-с)
Изображение
Это лох-неское чудовище потеряло свое озеро и бегает, пока его кто-нибудь не пристрелит.

Закрыто

Вернуться в «Бета-версии модов для phpBB 2.0.x»