.
8 февраля 2011

Чистка от спама SMF форума

posted in CMS |

Вынес отдельно с поста Размышления о СПАМе свой опыт по чистке форума.

Итак — с определенного момента я позабыл о форуме, полезной активности так же не наблюдалось, чего не сказать о спамерах! Наплодили более 60к сообщений в более чем 10к тем !

Чистка в ручную — нереально, поэтому решил я сразу в базе посты поубивать — найду последний СДЛ и бай бай! всем кто не спрятался — я не виноват :)

Первое, что я сделал — это определил первого зарегистрировавшегося спамера — это был 17й id.
Далее чистка спамеров.
DELETE FROM `prefix_members` where `id_member`>16
Чистка топиков созданных спамерами.
DELETE FROM `preix_topics` WHERE `id_member_started`>16
Чистка сообщений оставленных спамерами.
DELETE FROM `prefix_messages` WHERE `id_member` > 16
Ещё табличку подчищаем
DELETE FROM `prefix_themes` WHERE `id_member` > 16
Циферки естественно свои подставляем!

Прикол! — пока запросы выполнялись — ещё 20 спам-сообщений запостили, это потому что я в обратном порядке выполнял — тут то по уму выложил и плюс потому, что защитой я занимался после чистки, а не до — как полагается. Соответственно — делаем по уму — сначала защита, потом запросы в том порядке, в котором я и выложил.

Теперь о проблемах, обнаруженных после чистки —
1. вся информация о количестве тем и сообщений — старая т.е. в итоге 60к сообщений в 10к темах, хотя на самом деле и сотни не наберётся.
Лечится так: «Админка» — «Обслуживание форума» — «Пересчитать все форумы и статистику»

2. при просмотре категорий пропали все заспамленные ранее ветки
По идее лечится так:
«Админка» — «Обслуживание форума» — «Найти и исправить любые ошибки»
но к сожалению мне не помогло, пришлось вручную (т.к. у меня совсем немного тем, по-идее нужно сваять небольшой скриптик, фиксирующий проблему)

решение проблемы на примере одного топика:
UPDATE `smf`.`topics` SET `id_last_msg` = '15' WHERE `topics`.`id_topic` =5 LIMIT 1 ;
то есть определяем айдишник последней «живой» записи и ставим его в поле `id_last_msg`
(в моем случае там были айдишники удаленных спам-сообщений — из за чего и «косячило»)

Яндекс.Метрика