Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.6 > vBulletin 3.6 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vbStopForumSpam - known spammer lookup for new registrations Details »»
vbStopForumSpam - known spammer lookup for new registrations
Version: 0.61, by pedigree pedigree is offline
Developer Last Online: Nov 2013 Show Printable Version Email this Page

Category: Administrative and Maintenance Tools - Version: 3.6.1 Rating:
Released: 04-17-2008 Last Update: 01-26-2010 Installs: 1986
DB Changes Uses Plugins Auto-Templates
Additional Files Translations Is in Beta Stage  
No support by the author.

vbStopForumSpam

This provides access to a RBL type system for forum admins, listing known spam IP / email / usernames. The RBL database is provided by www.stopforumspam.com. You do NOT need an API key from the website in order to access the database. only to submit data if you should wish to do so.

At the point of user registration, the mod checks if the IP number / provided username / email addresses appear on a block list and can block the registration.

Whilst this isnt the most perfect way to stop all forum spam, its another step that spammers have to overcome.

VB4 here https://vborg.vbsupport.ru/showthrea...hreadid=230921
Its the same code, it works in 3.54 to 4.0


What it does

It checks with a remote database of known forum spammers. Their IP number, email address and forum username are tested and based on your configuration, you can reject / log / accept user registrations based on what you get back.

This version doesnt have
- whitelisting or the ability to submit users to the database but it will within the next week.
- automatic user deletion / post / PM purging. There are good tools out there already, this does something else.

Instructions are included in the installation.txt file - PLEASE read it first and dont forget to actually upload the files in the upload folder, otherwise it WILL kill your registration progress and you wont see the log file options in admincp. You do not need to download the product-vbstopforumspam-3.54.xml file unless you are using a vBulletin version older than 3.6.0

Changes to vB
- 3 new database tables
- 2 database table alternations
- No new templates.
- 2 Hook (register_addmember_process & register_addmember_complete)

Ive tested it but had feedback that it works with versions as old as 3.6.2... Support should go back to older versions, as long as they have hook support for register_addmember_process / register_addmember_complete

Known to work - tested by me
- vBulletin 3.6.8 on Apache 2.2 / PHP 5.1.2 on Linux using cUrl
- vBulletin 3.7 Gold on Apache 2.0 / PHP 4.4.3 on Windows without cUrl (template changes wont work on 3.7 - thats in the next version with auto template changes)

For code to submit spammers to the database, check this post for code changes
https://vborg.vbsupport.ru/showpost....&postcount=288

Reported in the thread to work
- 3.6.1, 3.6.2, 3.6.9, 3.6.10, 3.7.0, 3.7.1, 3.7.2, 3.7.3, 3.74, 3.80, 3.81, 3.82, 3.83, 3.8.4, 4.0beta3


If you have 3.54, then you can use the product-vbstopforumspam-3.54.xml file attached instead of the one in the ZIP file, which will allow older vBulletin versions to access this mods' features. I personally havent tested this version, its a user contribution, thanks to Darrell Mobley, that changes the way the XML works when imported into older versions.

Installers should remember to refresh their ACP navigation window when they first install it so they can see the new log file menu item.

REQUIRES MySQL 4.1.1+

Future versions
- Automatic integration into vBulletin to add users to the stopForumSpam.com database from a form
- Whitelisting of username / IP / email addresses
- AJAX integration to allow for lookups from within the users profile
- Decreased remote query count from three per user to one per user.

Versions / Changes

0.1 Initial Release

0.2 pedigrees special brew birthday release.
- Small security update. If you have 0.1 installed, download 0.2 and replace your existing functions_vbsfs.php with the one in the archive. It just tests to see if its running inside the VB framework before anything else. This is what happens when you code at 2am after drinking wine

0.3
- stopped it processing valid registrations twice
- moved all non-function code into the plugin. Not a big one as 0.2 basically did that
- fixed a typo in the log pruner that stopped it working (404)
- removed unused fields from the database for people with mysql that doesnt support varchar > 255 (ie mySQL4). If you have 0.2 installed and dont need to prune your logs just yet, you dont really need to install this version but can instead wait for 1.0 unless of a massive security update.

0.4
- logs registrations that arent/wouldnt be blocked
- fixed XML errors when username has a space it in
- tightened up the cache so that it doesnt test a username against an email name to give a bypass result (for when a username is an email address that isnt banned where the email address is)
- fixed some basic logic errors in the PHP

0.6
- Should work on PHP 4.4 now - rewrote the XML with PHP4 in mind (tested on Apache2.0/PHP 4.4.3)
- Fixed a caching system where data wasnt being updated correctly which could cause a remote query when one wasnt needed
- Possible false negative situation when a spammer was blocked due to SFS.com being down who then visited again when it was up but within the cache expiry time
- Remote query failure when the result page isnt XML should work a bit better now. It does a very basic test for valid XML results.
- Fixed log purging (again) and it should actually work properly now.
- No longer requires PHP5
- The log viewer now links to a user profile when registration is allowed.

v0.61 - Removed a template change that was invalid vBulletin code. The package you download will still say its 0.60 however

NB : When upgrading from any version to 0.6, you must remove and then add the plugin due to changes in one of the database tables

You need to have an API key from www.stopforumspam.com in order to submit data, its free and easy to get... You DONT need an API key in order to use this mod however, only to submit spammer data.

Issues are
- The usergroup permissions / view details etc DONT work. I jumped the gun and put the permissions controls in there before I put the code in. Please delete the includes/xml/bitfield_vbstopforumspam.xml file and rebuild your postbit

Installation
- Follow the instructions in the zip file, that includes upload the correct folders
- ONLY download the 3.54 xml file if youre using a vbulletin version prior to 3.6.0. use this file to install the mod instead of the xml file in the zip file.

Please click Installed

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
2 благодарности(ей) от:
Nassou, rpgamersnet

Comments
  #272  
Old 10-07-2008, 09:37 AM
pedigree pedigree is offline
 
Join Date: Jul 2005
Posts: 370
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

ngx - youre dead right. What has happened is that the bot is getting to the "allowed registration" phase as its not been caught by the ip/email/username tests. At this point, its passing control back to vbulletin to process the captcha (etc). This looks like the bot has got the captcha wrong and has tried again and again and again before finally getting it right.

What I will look at is the location of the hooks Im using or a better description so that "allowed registration" only gets logged when vbulletin has done its tests or change it to read "passed vbstopforumspam tests, passing to vbulletin". The intervals being one second would point at it being a bot, not someone botching it. I guess I could look at adding code to the log (if vbulletin doesnt already, would have to check) botch captchas with the user input and what the text was, too see just how far off they are.

Sign up for an API key at stopforumspam.com and submit those spammers details.

Evaporate - thanks. Ive added gmail to my forums banned domain list. Had a couple of people complain but I dont care, they can use something else. Trust google? Hell no. You might want to block mailinator.com as well.
Reply With Quote
  #273  
Old 10-07-2008, 11:21 AM
River_rush River_rush is offline
 
Join Date: Mar 2004
Location: Basingstoke
Posts: 82
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

amazing hack, used the site for manual lookups but this is EXCELLENT, installed on www.escortrscosworth.com & http://anotherfordforum.com/, its already stopped a couple of spammers signing up last night. nominated for motm both sites are running it on vBulletin? Version 3.7.3 with no probs
Reply With Quote
  #274  
Old 10-07-2008, 08:22 PM
Evaporate Evaporate is offline
 
Join Date: May 2007
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've installed this now on www.planetmgc.com and it seems to allow good ip address anyway.

Already seen a dramatic drop in spammer registrations. I've also blocked a couple of spammer bots that were chewing up CPU cycles including Yanga World Search bot (check it out on google). It's used by russians to spam harvest .

I've also just banned the entire Russian Federation IP range (find-ip-address.org) and entered this into .httaccees so that no Russian servers can even get to my site.

No one from Russia is likely to join my site to be honest anyway so it's a no brainer.

There are a couple of other tricks and hacks mentioned which I may use later on. But for now I'm a happy chap. Thanks Pedigree.

Going from 20-30 spam registrations per day, I've seen no new spam registrations yet.
Reply With Quote
  #275  
Old 10-08-2008, 12:10 PM
mnymaker mnymaker is offline
 
Join Date: Oct 2006
Posts: 11
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I was getting a bunch of bot registrations all of sudden. I guess the bots finally found my forum site ( www.talkaboutissues.org ). I installed your hack and BAM I haven't had a bot registration for the last 2 to 3 days. This is a very nice and effective mod.

Check out my site and register if you like my forum concept. Thanks!!!
Reply With Quote
  #276  
Old 10-08-2008, 03:31 PM
lazyllama lazyllama is offline
 
Join Date: May 2007
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Installed this on Monday night at 10pm. By 2pm on Wednesday it had blocked 255 spammers.

Thanks so much for this mod, it's made moderating the registrations a much less time-consuming task.
Reply With Quote
  #277  
Old 10-12-2008, 06:51 PM
douffle douffle is offline
 
Join Date: Mar 2007
Location: Ontario Canada
Posts: 65
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I installed this mod on two of my forums and each time a spammer tries to register I get a database error. This is the case for both forums. The error is as follows:

Database error in vBulletin 3.7.3:

Invalid SQL:
SELECT DATEDIFF(NOW(), '2008-10-10 12:55:48') AS DAYS;;

MySQL Error : You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(NOW(), '2008-10-10 12:55:48') AS DAYS' at line 1
Error Number : 1064
Request Date : Sunday, October 12th 2008 @ 01:46:10 PM
Error Date : Sunday, October 12th 2008 @ 01:46:13 PM
Script : http://www.webmastersden.net/register.php?do=addmember
Referrer : http://www.webmastersden.net/register.php?
IP Address : 92.241.169.185
Username : Violettaext
Classname : vB_Database
MySQL Version :

Anyone else get these error notices?
Anyone have any suggestions on how to resolve it?
I'm still using MySQL 4 on one forum and MySQL 5 on the other.

Thanks
Reply With Quote
  #278  
Old 10-13-2008, 06:49 AM
pedigree pedigree is offline
 
Join Date: Jul 2005
Posts: 370
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hmm, this is a strange now. I do all my development on 5 but I installed 4.1.22 and the query is indeed a valid one. Try this, open includes\functions_vbsfs.php, go to line 71 and change

$sql = "SELECT DATEDIFF(NOW(), '" . $lastseen . "') AS DAYS;";

to

$sql = "SELECT DATEDIFF(NOW(), '" . $lastseen . "') AS DAYS";

Notice the ; removed from before the last "

Can you PM me your exact version of mySQL, PHP and Apache that youre using on the forum that gives you this error, your server locale (US, Japan, French etc) so that I can look at it a bit more

I tried to register on your forum but your NoSpam questions/answers are wrong. 8+8-3 = 13 but not according to your forum
Reply With Quote
  #279  
Old 10-13-2008, 07:51 AM
DR AUTONAMUS DR AUTONAMUS is offline
 
Join Date: Jul 2007
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What would be good is a search feature like a cron job on initial install to just search trough already registered users and clean them out if there is any or log them for easy deletion
Reply With Quote
  #280  
Old 10-13-2008, 09:30 AM
pedigree pedigree is offline
 
Join Date: Jul 2005
Posts: 370
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Dr Autonamus - something that Ive already thought about that I was going to include in 0.8. ive tried to avoid the feature spread for 0.7 but Ill give write that on my whiteboard now. This is would painfully slow unless using downloaded lists which would be very quick indeed.
Reply With Quote
  #281  
Old 10-13-2008, 04:54 PM
douffle douffle is offline
 
Join Date: Mar 2007
Location: Ontario Canada
Posts: 65
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by pedigree View Post
Hmm, this is a strange now. I do all my development on 5 but I installed 4.1.22 and the query is indeed a valid one. Try this, open includes\functions_vbsfs.php, go to line 71 and change

$sql = "SELECT DATEDIFF(NOW(), '" . $lastseen . "') AS DAYS;";

to

$sql = "SELECT DATEDIFF(NOW(), '" . $lastseen . "') AS DAYS";

Notice the ; removed from before the last "

Can you PM me your exact version of mySQL, PHP and Apache that youre using on the forum that gives you this error, your server locale (US, Japan, French etc) so that I can look at it a bit more

I tried to register on your forum but your NoSpam questions/answers are wrong. 8+8-3 = 13 but not according to your forum


Hi,

There was a typo in the answer setting which has been corrected.
The problem exists on both of my sites, the one using MySQL4 and the one using MySQL5.

The first site, (vbulletinstuff.com), is using MySQL 5.0.45 and PHP 5.2.6.
The server is located in Hong Kong.

The other site, (webmastersden.net) is using MySQL 4.0.27 and PHP 5.2.6.
The server for this site is located in the U.S.A. I can switch it to MySQL 5 but I just haven't gotten around to doing it yet.

I will change the code as you suggest and get back to you with the results.

Thanks.
Reply With Quote
Reply


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 01:11 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04834 seconds
  • Memory Usage 2,333KB
  • Queries Executed 25 (?)
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
  • (1)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
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (2)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • 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