Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons

Reply
 
Thread Tools
SpamBuster v1.0.0 (Stable): Identify, log and remove spam posts on your forum Details »»
SpamBuster v1.0.0 (Stable): Identify, log and remove spam posts on your forum
Version: 1.0.0, by UK Jimbo UK Jimbo is offline
Developer Last Online: Mar 2013 Show Printable Version Email this Page

Version: 3.5.4 Rating:
Released: 03-01-2006 Last Update: 06-14-2006 Installs: 158
Uses Plugins
 
No support by the author.

This is the v3.5 version of vbSpamBuster that I wrote for vBulletin v3.0.x This version adds some new features.

What does it do?
It spots posts that could potentially be spam then (depending on option settings) creates a thread alerting site admin/moderators about the post and/or hides the post from view.

How does it identify the spam?
All off the posts for users with a post count of less than 10 (configurable) have their posts checked against a number of rules. Each rule has a different "score". If the total score for the post exceeds a specified limit then the post is deemed to be spam.

Can I add my own rules?
The installer file has a default rule set with it, you may wish to customise the rules in the options section of the AdminCP. The rules system is fairly simple to add to, in simple terms each rule is a perl regular expression and a score.

How do I install it?
Import the product via the Product Manager in the AdminCP. The options group and plugins will be added to your system. Now would be a good time to click the install link on here to record the fact that you've installed it.

How do I configure it?
Head to the "SpamBuster" option group in the "vBulletin Options" section of your AdminCP. Fill in the relevant fields. Further documentation will follow but it should be obvious what each setting does for the moment.

How do I upgrade?
Just run a regular install. It's worth backing up your settings particluarly the rules before performing the upgrade. If you're upgrading from v0.3.2 to v1.0.0 you can just download the attached rules file and add it via the admincp as there have been no code changes.

How can I test it?
Try posting a new thread/post with some trigger values in it. The string ekmas.com should do the trick.

Help it's broken my forum!
Erm, that's not an intended feature. Disable all six of the plugins that are part of the product "SpamBuster" and post an error report to this thread. The forum will work fine.

Why doesn't it do x,y or z?
Because I've either not thought about it yet or I've not written it yet. Please drop a post into this thread with any (sensible!) suggestions.

Can I use it commercially?
You're free to use it for whatever purpose comercially/privately as long as you don't resell the code. It's released under the LGPL, see the link below for futher info. If you find this plugin useful and you'd like to make a donation please use the "donate" button below.




This software is licenced under the CC-GNU LGPL.


Changelog
  • 15th June 2006 - v1.0.1 - Updated list of rules uploaded as a text file
  • 6th April 2006 - v1.0.0 - Stable release: code remains the same but the rules file has changed.

Supporters / CoAuthors

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #82  
Old 06-15-2006, 10:20 AM
contactsonia contactsonia is offline
 
Join Date: Feb 2005
Posts: 33
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Just updated the new rules
Reply With Quote
  #83  
Old 06-15-2006, 10:24 AM
UK Jimbo's Avatar
UK Jimbo UK Jimbo is offline
 
Join Date: Sep 2002
Posts: 249
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by contactsonia
Just updated the new rules
Cool - if anyone wants to post up rules they're using onto this thread then please do.
Reply With Quote
  #84  
Old 06-15-2006, 12:39 PM
ScubaAddict ScubaAddict is offline
 
Join Date: Dec 2005
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You know the best thing for me? I stop all users from posting a URL in their first 5 posts. Kills 99% of spam.

regexp:a_url:10:any:"/http/i"
regexp:a_www_url:10:any:"/www/i"

obviously a threshold of 10 - so anyone who posts any kind of URL will need to be moderated - if they have less then 5 posts.

Jimbo - I am not very good at figuring out the templates. How can I add the name of the poster to the spam report? I have spam reports posted to a special forum. I would like to have their name available (in the title?) so I can scan the title and see the real problem posters.

Is that possible?
Reply With Quote
  #85  
Old 06-15-2006, 12:54 PM
UK Jimbo's Avatar
UK Jimbo UK Jimbo is offline
 
Join Date: Sep 2002
Posts: 249
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ScubaAddict
You know the best thing for me? I stop all users from posting a URL in their first 5 posts. Kills 99% of spam.

regexp:a_url:10:any:"/http/i"
regexp:a_www_url:10:any:"/www/i"
I'd err on the side of caution and use something like

regexp:a_url:10:any:"/http:\/\//i"
regexp:a_www_url:10:any:"/www\./i"


Quote:
Originally Posted by ScubaAddict
Jimbo - I am not very good at figuring out the templates. How can I add the name of the poster to the spam report? I have spam reports posted to a special forum. I would like to have their name available (in the title?) so I can scan the title and see the real problem posters.

Is that possible?
${spam_user} is the name of the posting user. The user's name is already in the report as part of the quote tag.
Reply With Quote
  #86  
Old 06-15-2006, 01:10 PM
Gio Takahashi's Avatar
Gio Takahashi Gio Takahashi is offline
 
Join Date: Jul 2003
Location: Cape Coral
Posts: 250
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by UK Jimbo
Gio - it looks like the links have been removed from all the posts on that forum so I can't suggest rules. Generally excluding by URL is the way to go.
Hmm. Okay. When I do indeedget more spamvertiser, I'll preserve the links to help with the rules.
Reply With Quote
  #87  
Old 06-22-2006, 11:49 AM
jdh jdh is offline
 
Join Date: Mar 2005
Location: Toronto
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Great plug-in, and we've just recently installed and began using it on our system. Still tweaking the rule-set, but so far it's been great.

I have run into the admincp/modcp issue as well, since as far as I can tell the postdata_presave hook is also called when moderating posts. I haven't been getting any errors, but the admincp/modcp page doesn't refresh at all after validating posts (I get a blank page), and the whole process basically just fails.

In my case, I had to add the following snippet, modified from an earlier post in this thread:

Code:
if (function_exists('sbhits') == true) {
		$GLOBALS['sbhits'] = sb_test($this);
	}
The $GLOBALS['sbhits'] = array() portion in the else construct didn't actually work, so I trimmed it down to what you see above, and that appears to have restored modcp/admincp functionality for me.

I've also made a small addition in my system that I thought I'd share... Generally, spammers on our forum get banned pretty quickly, but obvioiusly I don't want that to be an automated process until an Admin or Senior Moderator has had a chance to review the situation. So what I did was a template modification to add a link to the banning portion of the modcp. Basically, a "Click Here to Ban or Suspend This User" link.

The following specific modifications were made in SpamBuster Libraries under the global_start plug-in hook:

In variable definitions:
Code:
   // added 21 Jun 06 by JDH to fetch userid for banning link
    $spam_userid = $post->registry->userinfo['userid'];
In body of message section:
Code:
[URL=http://forums.ilounge.com/modcp/banning.php?do=banuser&u=${spam_userid}]Click here to Ban or Suspend this user[/URL]
The only other issue that I've run into is the way that posts are dropped into the moderation queue after an edit of an existing post when it's the first post in the thread.

Normally, if a user posts a new thread which is tagged as spam, the entire thread is set to require moderation. However, if the user posts a valid thread, and then goes back and edits their first post, then only the post is sent to the moderation queue.

This creates a situation where normal users see a dangling thread header with no posts. Further, the in-line moderation tools don't work for approving the post, because they're looking to approve the thread. I think the post can still be approved from the ModCP, but ultimately it creates an odd situation.

Granted, this shouldn't occur too often, but it would be nice to add a check to the code following an edit to determine if the post being edited is the first in it's thread, in which case the thread should probably be set to "moderated."

I'm going to poke a bit at the code myself to see if I can't make this work, although it's not a huge priority. If I do solve it, however, I'll post my results here.

Thanks again for a great mod otherwise, though.
Reply With Quote
  #88  
Old 06-22-2006, 12:08 PM
UK Jimbo's Avatar
UK Jimbo UK Jimbo is offline
 
Join Date: Sep 2002
Posts: 249
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the detailed feedback and suggestions. I'll factor these in for the next release.
Reply With Quote
  #89  
Old 08-11-2006, 06:57 PM
ptenthus ptenthus is offline
 
Join Date: Jan 2002
Location: Lyons, CO
Posts: 28
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any update of this for 3.6.0?
Reply With Quote
  #90  
Old 08-12-2006, 09:11 AM
UK Jimbo's Avatar
UK Jimbo UK Jimbo is offline
 
Join Date: Sep 2002
Posts: 249
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I don't have a 3.6 install to test it on at the moment. If anyone would like to verify if it works or otherwise that would be great.

Thanks
Reply With Quote
  #91  
Old 08-13-2006, 03:36 AM
ptenthus ptenthus is offline
 
Join Date: Jan 2002
Location: Lyons, CO
Posts: 28
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It appears to be working in 3.6.0...though I haven't had any real-world tests (actual spammers) hit it yet.

It did catch my test posts (both new posts and replies).

If it does anything odd, I'll be sure to let you know.
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 10:56 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.11978 seconds
  • Memory Usage 2,316KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_code
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete