Stuart Wright
Well-known member
This applies to Xenforo 1 also and it's an issue on AVForums.
We have our anti-spam settings like this:
So the first 5 messages are checked for spam and if they match a spam phrase, go into the moderation queue. We don't want to reject them outright because they may not be spam. (Note that we block bit.ly and amzn.to because all URL shorteners are against our rules since that would be a stealth method of posting spam links).
Presumably increasing the number of messages to check for spam from 5 to, say, 999999 would put extra processing load on all new messages for the sake of a tiny amount of spam.
So the problem is that recently we've had chinese spammers using fake IPs (so Stopforumspam fails to get them) who manually post a ton of spam. They know when their posts go into the moderation queue, so they post 5 non-spam messages and then post 60 spam messages in a very short time.
We added a common Chinese character to the spam phrase list (you can see it at the bottom in the screen capture above) but Xenforo's anti-spam system fails to stop them because they post non-spam for the first 5 messages.
When I upped the number of messages to check from 5 to 9 (more of an unpredictable number), they posted 5 non-spam messages, three spam messages which they saw get moderated, then 6 non spam messages and then 60 spam messages, all of which got through, of course.
What we need is an extra measure on top of what we have now.
For example, if any message from a member gets put into the moderation queue then all subsequent messages are checked. I.e. when a member posts a new message, if they have any messages in the moderation queue, then check the new message.
When all the messages in the queue have been checked and approved so no messages from that member are in the queue, then the Maximum Messages to Check for Spam number is obeyed.
Would that put too much extra load on the process of posting a message? I guess a new query to check the moderation queue for messages by that member?
Alternatively, if a member's message is put into the moderation queue, we could change their user state to Awaiting Approval so they can't post anything else until their message has been looked at and their account manually approved or banned. The system would need to inform them of that situation adequately.
Would either of those suggestions be a good idea/hard to implement?
We have our anti-spam settings like this:
So the first 5 messages are checked for spam and if they match a spam phrase, go into the moderation queue. We don't want to reject them outright because they may not be spam. (Note that we block bit.ly and amzn.to because all URL shorteners are against our rules since that would be a stealth method of posting spam links).
Presumably increasing the number of messages to check for spam from 5 to, say, 999999 would put extra processing load on all new messages for the sake of a tiny amount of spam.
So the problem is that recently we've had chinese spammers using fake IPs (so Stopforumspam fails to get them) who manually post a ton of spam. They know when their posts go into the moderation queue, so they post 5 non-spam messages and then post 60 spam messages in a very short time.
We added a common Chinese character to the spam phrase list (you can see it at the bottom in the screen capture above) but Xenforo's anti-spam system fails to stop them because they post non-spam for the first 5 messages.
When I upped the number of messages to check from 5 to 9 (more of an unpredictable number), they posted 5 non-spam messages, three spam messages which they saw get moderated, then 6 non spam messages and then 60 spam messages, all of which got through, of course.
What we need is an extra measure on top of what we have now.
For example, if any message from a member gets put into the moderation queue then all subsequent messages are checked. I.e. when a member posts a new message, if they have any messages in the moderation queue, then check the new message.
When all the messages in the queue have been checked and approved so no messages from that member are in the queue, then the Maximum Messages to Check for Spam number is obeyed.
Would that put too much extra load on the process of posting a message? I guess a new query to check the moderation queue for messages by that member?
Alternatively, if a member's message is put into the moderation queue, we could change their user state to Awaiting Approval so they can't post anything else until their message has been looked at and their account manually approved or banned. The system would need to inform them of that situation adequately.
Would either of those suggestions be a good idea/hard to implement?
Last edited: