XF 2.2 Борьба со спамом

Версия XenForo
2.2.13

Akvas

Проверенные
Сообщения
78
Реакции
29
Баллы
8,115
Всем привет!
Кто как борется со спамом? Где-то недели полторы-две одолевают спамеры и консервы:
1744647447088.png

Стояли несколько лет вопрос-ответ (периодически менял), но теперь это не работает. Включил гугл-капчу, все равно регаются. Пока включил ручное одобрение + увеличил сроки по хранению ip для сравнения учеток, чтобы проще банить сразу было.
В первую их атаку вовремя зашел на форум, буквально за несколько минут наспамили ссылками на запрещенку около тысячи сообщений, но благо быстро сообразил, что надо лимиты сообщений добавить, чтобы кнопка "спам" снова появилась под сообщениями для быстрой чистки.

п.с. не поленился и зарегался на стопфоруме и добавил api-ключ, чтобы помогать обновлять спам-лист для всех
 
Последнее редактирование:
Была недавно такая же проблема, обновление списков почт не поможет, я пытался, ставь - [OzzModz] Registration Spaminator, как минимум мне помог
Не помог плагин, с Рамблера эта дрянь каждый день регистрируется.

Сделал по маске запрет на определенные ключевые слова и запретил ссылки новым пользователям в постах.
 
Сегодня сам столкнулся со спамерами и тоже с рамблера, но были кто из яндекса или hotmail. С помощью его - [021] Multi-account detector мне быстро помог найти твинков, помимо базовой системы учёта и заблочить с концами. Пока тихо, но фиг знает когда повторится и что с этим потом делать. Неужели боты поумнели? 😁 На первый взгляд даже усомнился, а бот ли был.
 
Там скорее всего человек
Так как у меня пытался пару раз, понял что не пролезет и отчалил восвояси
Был бы бот, он бы тупо ломился снова и снова
 
С утра обнаружила 70+ новых тем от спамера 😓😵 ох уж он оторвался ночью, пока я спала 😅… Он каким-то образом умудрился пройти проверку постов на спам от Akismet, хотя такого ещё ни разу не случалось. Причём в каждом посте были ссылки на кракены, а у меня ведь были установлены стоп-слова — как по этим ссылкам, так и по названию… Как так вышло!?

Ладно, StopForumSpam не всегда кидает на ручную проверку регистрацию спамера. Но Akismet меня раньше никогда не подводил.

В итоге пришлось создать новую группу пользователей: все, у кого 0 сообщений, теперь проходят ручную проверку первого поста.

И ещё: я обратила внимание, что этот спамер даже не отображался в списке активных пользователей форума в момент публикации сообщений. И посты появлялись строго каждые 10 минут — явно автоматическая публикация.
 
Причём в каждом посте были ссылки на кракены
Аналогично ловлю уже 2 день. Думаю решить проблему путем условием проверки при создании новых тем. Судя по действиям, это человек, который проходит регистрацию, а после просто включает алгоритм бота. Если только боты не научились имитировать действие человека? 🤔
 
Думаю решить проблему путем условием проверки при создании новых тем. Судя по действиям, это человек, который проходит регистрацию, а после просто включает алгоритм бота. Если только боты не научились имитировать действие человека?
Может ИИ конечно
И опять почта рамблера у всех?
 
Может ИИ конечно
И опять почта рамблера у всех?
Не всегда. Помимо rambler, попадаются yandex, gmail, mail, bltiwd, nespj, gridjuliet, punkproof (из зоны COM). Это по крайне мере, что я словил.
Чаще всего рамблер и яндекс. Закрывать не показатель решения.
 
Последнее редактирование:
Не всегда. Помимо rambler, попадаются yandex, gmail, mail, bltiwd, nespj, gridjuliet, punkproof (из зоны COM).
Чаещ всего рамблер и яндекс. Закрывать не показатель решения.
Согласен. У меня еще ручная проверка регистраций. Есть факторы по которым определяю реальный ли это человек или нет. Пока так 🤷‍♂️ Но кракен реально заёб
 
Может ли кто-то знающий объяснить мне, для незнающей: что такое маски и регулярные выражения в контексте этих стоп-спам-фраз?
Вдруг я неправильно написала сами фразы — может, нужно было начинать с * или /?
И ещё: имеют ли эти фразы чувствительность к регистру? Т Или неважно как написано маленькими или большими буквами, или всё в перемешку!?
1751627867740.png

И опять почта рамблера у всех?
99% спасмеров были с почтой рамблер, но один всё-таки был нормальный человек с рамблера. Бывали спасмеры и с другой почтой типа @gmx.com)
 
С утра обнаружила 70+ новых тем от спамера 😓😵 ох уж он оторвался ночью, пока я спала 😅… Он каким-то образом умудрился пройти проверку постов на спам от Akismet, хотя такого ещё ни разу не случалось. Причём в каждом посте были ссылки на кракены, а у меня ведь были установлены стоп-слова — как по этим ссылкам, так и по названию… Как так вышло!?

Ладно, StopForumSpam не всегда кидает на ручную проверку регистрацию спамера. Но Akismet меня раньше никогда не подводил.

В итоге пришлось создать новую группу пользователей: все, у кого 0 сообщений, теперь проходят ручную проверку первого поста.

И ещё: я обратила внимание, что этот спамер даже не отображался в списке активных пользователей форума в момент публикации сообщений. И посты появлялись строго каждые 10 минут — явно автоматическая публикация.
Я сделал так, если у пользователя в первых 10 опубликованных сообщениях есть ссылка, идёт на проверку. Плюс по стопфразам.
 
У меня дней 5 тому назад проскочило пару спамеров, регил человек в ручном режиме
И снова пару спамеров
CleanTalk стал уже умнее, Срубил на стадии регистрации. Почта стандартна - рамблер. И локация всегда - США
Пробуйте их еще по локации отсеивать. StopForumSpam позволяет по странам фильтровать
 
Мне хорошо помог спам-фразы указать базовые и хоть не пропускает портянку. Но конечно парит начинает чистить в модерации такое. Выходит появились боты уровня ИИ, раз обходят базовые протоколы без проблем. Универсальных решений особо то и нет этому? При том началось то резко так.
 
oljarose ,Тоже последние дня три кракен забадывает, полностью победил стоп-фразами.
Благо они в самом конце каждого его поста есть ) как теги.

Насчет маски:
*фраза*

Означает что будет заблокирован текст типа такого текстФРАЗАтекст.
Все что ДО "фраза" и все что ПОСЛЕ.
=> kra30 \ kra50 \ kra90 и т.д. можно заменить просто на kra*

Еще, в стоп фразы добавил http*, а в настройках XF указал что проверять на спам нужно пользователей пока они не наберут хотя бы 10 сообщений.
Думаю, это отсеет 90% ботов.
Прикрепил свой список слов.
Можно добавить еще *.onion

Срабатывание StopForumSpam снизил до одного флага.
Теперь аккаунты ботов улетают на проверку с вероятностью в 50%
 

Вложения

  • stop.txt
    373 байт · Просмотры: 16
Последнее редактирование:
oljarose ,Тоже последние дня три кракен забадывает, полностью победил стоп-фразами.
Благо они в самом конце каждого его поста есть ) как теги.

Насчет маски:
*фраза*

Означает что будет заблокирован текст типа такого текстФРАЗАтекст.
Все что ДО "фраза" и все что ПОСЛЕ.
=> kra30 \ kra50 \ kra90 и т.д. можно заменить просто на kra*

Еще, в стоп фразы добавил http*, а в настройках XF указал что проверять на спам нужно пользователей пока они не наберут хотя бы 10 сообщений.
Думаю, это отсеет 90% ботов.
Прикрепил свой список слов.
Можно добавить еще *.onion

Срабатывание StopForumSpam снизил до одного флага.
Теперь аккаунты ботов улетают на проверку с вероятностью в 50%
Тоже настроил на проверку ссылок для новых пользователей, вот только проблемка. Когда новый пользователь цитирует пост со ссылкой, он тоже улетает на ручную проверку. Пока не придумал, как это победить
 
Ниже скрипт, который писал для чистки подобного мусора. Было больше тысячи тем.
Инструкция:
  1. Создать PHP-файл в корне сайта с приложенным ниже содержимым (либо взять из приложенного архива). Настоятельно рекомендую дать скрипту какое-то непредсказуемое имя, дабы снизить вероятность того, что его кто-то сможет найти и запустить.
  2. Положить в корень сайта и перейти на этот файл (https://domain.com/file_name.php, например https://xenforo.info/kraken.php).
  3. Посмотреть список найденных тем, убедится что в нём отсутствуют лишние темы (ВНИМАНИЕ: темы будут удалены ФИЗИЧЕСКИ, без каких-либо следов в движковых журналах, имейте это ввиду).
    1. Если в список включены темы, которые вы не хотите удалять, можете добавить их идентификаторы в список $excludeThreadIds. Пример: $excludeThreadIds = [250, 1353, 7777];. Конкретно этот функционал я дописал сейчас на ходу и не тестировал, но должно работать, всегда проверяйте список тем, который выводит скрипт.
  4. Когда убедились, что со списком всё окей, переходим на адрес https://domain.com/file_name.php?delete_confirm=1. Ещё раз ВНИМАНИЕ: темы удаляются ФИЗИЧЕСКИ, это последняя возможность увидеть список того, что будет удалено, при следующем обновлении страницы список будет пуст.
  5. Внизу страницы так же выводится список идентификаторов юзеров-авторов удаляемых тем, может быть полезным в случае, если хотите побанить ботов.
  6. На строке ->where('FirstPost.message', 'LIKE', '%кракен%'), между знаками процента, можно отредактировать кейворд который ищет скрипт.

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

PHP:
<?php

$dir = __DIR__;
require($dir . '/src/XF.php');

XF::start($dir);
XF::setupApp('XF\Pub\App');

$excludeThreadIds = [];

$threads = \XF::finder('XF:Thread')
    ->with('User', 'FirstPost')
    ->where('FirstPost.message', 'LIKE', '%кракен%')
    ->where('thread_id', '<>', $excludeThreadIds)
    ->fetch();

$confirmDeletion = \XF::app()->request()->filter('delete_confirm', 'bool');

$involvedUserIds = [];

/** @var \XF\Entity\Thread $thread */
foreach ($threads as $thread)
{
    $involvedUserIds[] = $thread->user_id;

    if ($confirmDeletion)
    {
        $thread->delete();
    }

    echo sprintf("%d. %s (%d, %s, deleted: %s) <br>",
        $thread->thread_id,
        $thread->title,
        $thread->User->user_id,
        $thread->User->username,
        $thread->isDeleted() ? 'yes' : 'no'
    );
}

$involvedUserIds = \array_unique($involvedUserIds);

echo "<br><br> Total threads: " . \count($threads);
echo "<br> Involved user IDs: " . \implode(', ', $involvedUserIds);
 

Вложения

  • kraken.php.zip
    647 байт · Просмотры: 3
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу