XF 1.2 Spam Prevention and Management

While 1.1.4 added some spam prevention tools, XenForo 1.2 takes these further. This is by no means the end of our fight against spam though.

In 1.2, we've mostly focused on adding support for APIs and adaptable spam prevention techniques. Let's look at a few.

Deeper Stop Forum Spam Integration
We actually detailed this a long time ago. While 1.1.4 added support for checking a DNSBL that used the Stop Forum Spam database, 1.2 has a much more configurable integration:

ss-2013-05-28_10-53-35.webp


In addition to simply checking registrations against SFS, you can also get an API key and submit back to them automatically when spam cleaning a user.

If you opt to use the SFS integration to check registrations, the Tornevall DNSBL will not be checked.

Project Honey Pot HTTP Blacklist
In addition to the existing DNSBLs, you can sign up for a Project Honey Pot API key to check their blacklist. While this often overlaps with SFS's database, there are some variations.

ss-2013-05-28_11-03-32.webp


Message Content Checking: Akismet and Spam Phrases
Up until now, we've focused on preventing spam registrations. While that's the ideal situation, it's not always possible to detect spam until you see what they actually try to post.

ss-2013-05-28_11-08-18.webp


Here, we provide a simple "spam phrases" option, which uses simple pattern matching (or regular expressions) to detect spam. For example, here on XenForo.com, the vast majority of the spam we see fits a particular profile that can be matched with "watch * online". Content matching these phrases will be rejected or set to be manually approved. The checks are done on posts, profile posts and conversations. In situations where manual approval isn't possible (such as in conversations), the messages will be rejected.

To limit the potential for false positives, the checks are limited to only the first few messages by a user.

Then there's Akismet. It provides an API that uses various heuristics to tell you whether the message being submitted is spam. Note that depending on your site's purpose, Akismet may not be a free service.

Spam Cleaner Can Delete Sent Conversations
To help deal with conversation spam, the spam cleaner can now (optionally) delete all conversations started by the spammer. This will remove the conversations from the inbox of anyone that received them (and update their unread conversation counts).

For Developers: General Spam Prevention API
There is now a SpamPrevention model that is called in various scenarios. You can simply hook your spam prevention call into the correct position and return what action to take. This is called in the following situations:
  • When a new user registers
  • When a user is spam cleaned (to submit spam users and spam content)
  • To determine if the user posting a message needs to be spam checked
  • When a message is submitted
  • When a message that was moderated because of spam and is approved (submitting "ham")
This system should make it easier to add-on developers to integrate their own spam prevention systems.
 
Can we get an option to restrict domain names (down to extension as most of the spammers I get are .info, .biz)?

These are the ones that get through most of the spam management tools now.

Also a registration log like XenUtiles has that shows you at a glance information, but allows for bulk deleting/banning would be amazing. I just cleared 28 pages of bots off of Xenique last night and I did so one bot at a time :mad:.
 
It's still a very nice addon and I am sure with the Spam developer API there is still a lot you could do to enhance 1.2. :) Btw, I just bought your addon yesterday. :)

Thank for your support. Actually we still have other options that 1.2 would not include (at the moment). With 1.2 we just make the things faster.
 
Message Content Checking: Akismet and Spam Phrases
Up until now, we've focused on preventing spam registrations. While that's the ideal situation, it's not always possible to detect spam until you see what they actually try to post.

View attachment 47018

Here, we provide a simple "spam phrases" option, which uses simple pattern matching (or regular expressions) to detect spam. For example, here on XenForo.com, the vast majority of the spam we see fits a particular profile that can be matched with "watch * online". Content matching these phrases will be rejected or set to be manually approved. The checks are done on posts, profile posts and conversations. In situations where manual approval isn't possible (such as in conversations), the messages will be rejected.
So adding http to this would flag every post with a link? (y)
 
I have to agree with this. I have been checking the tools that were and are being used to spam forums, and there is no tool or anything that can automatically solve questions in images.

do you mean: turning your "individual custom Q&A Captcha" into an image ?
 
Mike, this is awesome!

I would really appreciate it to see an option to ignore the username SFS blacklist specifically as that causes a lot of false negatives.

Will there be a SFS/PH log? We get a lot of support tickets from users that do not get passed SFS/PH and then its needed to search for the registration attempt and tell the user why the registration was denied.

Can we get an option to restrict domain names (down to extension as most of the spammers I get are .info, .biz)?

These are the ones that get through most of the spam management tools now.
I designed a domain blacklist / whitelist for my vbulletin big board and had this coded. This is functionality really a life saver that I would recommend to anyone. No fake/temp email domain or high spammer frequency domain can be used to register on my sites. And its always up to date. It would be fairly easy to replicate for XF.

There is little that can be done about it after the email has been received.
You are underestimating the magical coding powers of K&M. They can do this.
 
Great stuff. As mentioned before I'd also like a log for much of this but I'd really like a log of the Q&A. I'd like to know how many successful/unsuccessful attempts.
 
Great additions! I don't know if it has been done already but I feel that once if Stop Forum Spam triggers a warning but still lets the user through in such a case... the member should be put on manual approve for the first x amount of posts.

What do you think?
 
I dont know if its a coincidence but since XF 1.2 has been installed here, I regularly see spam posts stuffed with obvious spam links getting posted here.
I wonder how these get past the spam protection.
 
It's not related to 1.2. It's been happening for a while, but the staff are usually really fast. Looks like none are on right now.
 
Top Bottom