Сделать некое средство, которое замечает типичную аномальную активность типа вайпов (массовое создание новых нитей и другие сценарии) и блокирует её. Подумать над возможными настройками.
Возможный вариант (в виде пунктов гипотетической страницы настроек):
- Фильтр включается или выключается в модерке,
- Выбор досок, на которых он должен включаться (все или только определённые),
- Квота по сообщениям и нитям (возможно, отдельно), можно не заморачиваться с автоматическими расчётами и вбивать вручную, я думаю, При превышении достаточно просто отклонять, хотя при желании можно запилить и автобан при признаках долбёжки (но тут надо думать, как её определять).
- Белый список пользователей, на которых не распространяется фильтр. Вот тут бы пошёл автоматический сбор адресов, с которых есть сообщения, за заданное количество дней, а также возможность добавлять вручую. Залогиненные в модерку по-хорошему не должны фильтроваться изначально.
Comments (10)
-
-
reporter Тут именно осмысленные лимиты нужны. Типа появляется больше десяти нитей за пару минут, включается фильтр на некое время. Если много долбятся после включения, автобаны.
Ещё можно для пользователей с “проверенными IP” как-то смягчить это, но надо думать, как уменьшить возможность создания заранее “спящих агентов”.
-
Ну допустим.
Есть окно в N минут/часов/дней, при попытке постинга сверяется с другим окном за:
- Прошлое окно
- Прошлое окно неделю/день назад (чтобы не удивляться тому, что в 5 утра постов нет, но есть в 6)
- Средним за N прошлих окон
Если удачный постинг вызовет отклонение, превышающее процентную/абсолютную дельту, то он воспрещается, и регистрируется нарушение. Если нарушений за окно много, начинаются автобаны.
Честно не могу сказать какая модель лучше из головы, но могу попробовать попрогонять по копии постов что у меня есть и может подобрать коэффиценты.
-
reporter Ну, наверное, как-то так. Ещё бы сделать режимы, чтобы можно было либо вообще отключить, либо наоборот по самым строгим параметрам фильтровать. И по-хорошему, отдельно учитывать ОП-посты и ответы.
-
reporter Ну и хорошо бы действительно предусмотреть исключения для проверенных пользователей.
-
Не понимаю такие сложности. Просто если за последние 5 минут/час было отправлено (всеми вместе) больше 20/50 постов или создано 5/10 тредов, то тупо замораживаешь постинг/создание тредов и отправляешь алерт уполномоченному через апи удобного мессенджера. Он приходит и разбирается со злодеем, убирая эти жалкие 10 тредов.
-
https://bitbucket.org/Therapont/fbe-410/src/fc7fe4fdeff231141314b838d7c220893807973b/board.php#lines-297
Вот хоть сюда вставляй еще пару простых проверок, а заморозку создания тредов реализуй через поле вида new_threads_lock_expires_timestamp в таблице. Я бы запилил, но вы в /dev/ очень уж пугаете сложностями поднять тестовую доску. Гайд, а то и докер-образ для быстрого развертывания помог бы возможным энтузиастам. -
reporter - edited description
-
reporter - edited description
-
reporter - edited description
- Log in to comment
Можно сделать простой лимит на количество постов/бампов/тредов в час, но оно ж будет бить по всем.
Для поисков аномалий всяко есть какие либы, но их ещё надо прикрутить, и статистика в целом не моя область работы.