Страница 1 из 27

Detector Bots

Добавлено: 27.12.2005 10:22
lex
Недаёт размещать сообщение с кучей ссылок, обычно размещаемые рекламными ботами.
Особенно полезен, где гостям разрешается создавать темы.

:arrow: Скачать новейшую версию и посмотреть исправления

Добавлено: 27.12.2005 11:02
Поручик

Добавлено: 27.12.2005 11:45
lex
Отличия огромны!
Stop Advertisement bots - Не даёт ботам РЕГИСТРИРОВАТСЯ на форуме.
Detector Bots - Блокирует размещения поста с большим количеством ссылок.

А в месте эти два бота, это очень хорошая защита от спама!
Рекомендую ставить оба. Я так и сделал.

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

Вот опять ещё 16 попыток.
И опять _www.rupoisk.ru_.
Придётся на верно IP банить. За сегодня уже 26 попыток спама этого сайта. Видимо создатели его очень любят.

Добавлено: 27.12.2005 15:25
Поручик
Вот этот код

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

preg_match_all('/\[url(.*?)\[\/url\]/i',$post_message, $bot_link);
проверяет только bbcode [url]?

А если напихать от души обычных ссылок и изображений?
Рекомендую дополнить мод что-то вроде этим

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

preg_match_all("#\[(img:$bbcode_uid|img=right:$bbcode_uid|img=left:$bbcode_uid)\[/img:$uid\]#si", $post_message, $matches);

preg_match_all("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", $post_message, $matches);

preg_match_all("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", $post_message, $matches);

Добавлено: 27.12.2005 18:14
Coagulant
На самом деле лучше бы в лог это сбрасывать какой-нибудь, чем мыло засорять. :wink:
Кстати, большинство спама (по моему опыту) ограничивается одной ссылкой, их тоже надо ведь ловить. :?

Поэтому советую Антиспамер, эффективней должен быть, имхо.

Добавлено: 27.12.2005 19:16
lex
Никто не заставляет всё на мыло отправлять. Это для проверки работы мода. Просто удалите часть кода отвечающего за почту.
Coagulant писал(а):Поэтому советую Антиспамер, эффективней должен быть, имхо.
Но для него фильтры настраивать надо... Гиморно это.
Coagulant писал(а):Кстати, большинство спама (по моему опыту) ограничивается одной ссылкой, их тоже надо ведь ловить.
Ну не знаю. У меня ещё мало постов на форуме, но кроме многоэтажных ссылок другого спама небыло.

А антиспамер можно использовать для рекламы другого типа, вырезания мата и всякой гадости. Кто мешает использовать оба мода?

Добавлено: 27.12.2005 23:03
Romy
lex писал(а):Stop Advertisement bots - Не даёт ботам РЕГИСТРИРОВАТСЯ на форуме.
вам нужны боты? Тогда на кой йух вообще какие-то моды ставить?!
lex писал(а):Detector Bots - Блокирует размещения поста с большим количеством ссылок.
вот объясните, в чём разница между ботами-регалками и ботами-спамерами (кроме засорения и так убитой БД всякими п*дорами типа блокнотик.ру; рупоиск.ру и прочим_хламом_от_мега_отморозков)??

З.Ы.
Coagulant писал(а):На самом деле лучше бы в лог это сбрасывать какой-нибудь, чем мыло засорять.
А какая разница между логами и админскими (и как правило спамными) мылами?!?!?!?!???

Лолите вы, причом по чорному, гаспада :lol: :lol: :lol:

Добавлено: 28.12.2005 7:01
Поручик
Да уж -> http://forum.net.ru/viewtopic.php?t=3627 (см. пока админ не убил)

Добавлено: 28.12.2005 7:33
lex
Поручик писал(а):Да уж -> http://forum.net.ru/viewtopic.php?t=3627 (см. пока админ не убил)
Вот именно! Против такого этот мод и предназначен!
А Romy что-то не понятное написал...

Добавлено: 30.12.2005 2:11
master
Поручик писал(а):Вот этот код

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

preg_match_all('/\[url(.*?)\[\/url\]/i',$post_message, $bot_link);
проверяет только bbcode [url]?

А если напихать от души обычных ссылок и изображений?
Рекомендую дополнить мод что-то вроде этим

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

preg_match_all("#\[(img:$bbcode_uid|img=right:$bbcode_uid|img=left:$bbcode_uid)\[/img:$uid\]#si", $post_message, $matches);

preg_match_all("#(^|[\n ])([\w]+?://[^ "\n\r\t<]*)#is", $post_message, $matches);

preg_match_all("#(^|[\n ])((www|ftp)\.[^ "\t\n\r<]*)#is", $post_message, $matches);
прошу уточнить про preg_match_all, потому, что пропускают все варианты набор обычных ссылок

Добавлено: 30.12.2005 7:18
lex
master Пробуй обновлёную версию (См. первый пост)

Находит все ссылки такого вида (на этом наборе тестировалось, полевых испытаний не проходил:) )

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

http://www.site.ru
http://mobi.site1.ru
www.site1.ru
www.site2.ru
[url]mobi.site.ru[/url]
[url]www.site3.ru[/url]
[url]http://mobi.site2.ru[/url]
[url]http://www.site3.ru[/url]

Добавлено: 16.01.2006 14:03
natali
на 19 версии тестировалось?

Добавлено: 16.01.2006 15:07
lex
Да. И вообще от версии не зависит;)

Добавлено: 01.02.2006 19:30
sergo_rus
lex,
пожалуйста, объясни, что нужно сделать, чтобы отчет о блокировке попытки ссылко-спама не приходил на мэйл. Что нужно закомментировать?
(Если не я, то какой-нибудь другой глупец спросил бы об этом рано или позно - мы же не программисты :))

Добавлено: 01.02.2006 20:02
Поручик
этот участок кода

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

         include($phpbb_root_path . 'includes/emailer.'.$phpEx);
         $emailer = new emailer($board_config['smtp_delivery']);
         $emailer->from($board_config['board_email']);
         $emailer->replyto($board_config['board_email']);
         $emailer->use_template('detector_bot', $board_config['default_lang']);
         $emailer->email_address($board_config['board_email']);
         $emailer->set_subject('Попытка размещения рекламы');
         $emailer->assign_vars(array(
            'SITENAME' => $board_config['sitename'],
            'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '',
            'IP' => $client_ip,
            'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $userdata['username']), 0, 25)),
            'MESSAGE' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $post_message), 0, 1000)),
            'SUB' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'",  $post_subject), 0, 100))));
         $emailer->send();
         $emailer->reset();      
Хотел более коротко, но
sergo_rus писал(а):мы же не программисты