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

Reply
 
Thread Tools
Stop the Registration Bots Details »»
Stop the Registration Bots
Version: 1.2.2, by noppid noppid is offline
Developer Last Online: Sep 2015 Show Printable Version Email this Page

Category: Miscellaneous Hacks - Version: 3.7.x Rating:
Released: 06-29-2008 Last Update: 12-07-2012 Installs: 624
DB Changes Uses Plugins Template Edits
Re-useable Code Additional Files Translations  
No support by the author.

Control your vBulletin forum registration process and stop the registration bots.

This mod will check the the time it takes for a vBulletin registration form to be submitted. If the form is submitted faster then humanly possible, the registration will be denied and the admin contact will be emailed about the event. The time is settable

We will start the registration on the forum rules page in two ways. First we will add a custom hidden field with a hash. Second we will insert a randomly named hidden field with a random value. This should make it a bit difficult to program a bot since the field names on all sites will be different as well as the values.

We will use a second set of random hidden fields on the form page as well to add to the confusion.

Time stamps to check the time spent on registration submission are stored in a DB table and private.

A registration will have to come through the Rules page and the form. Every Site will be different.

Installation is very easy.

There are two templates to edit.
One database table is added.
Three hooks are utilized.
Includes uninstall code.
Adds to vBulletin options.
Set time frame option.
Includes Phrases.
Sends Mail to Admin.
No files to upload.
XML product install.
Instructions attached in zip.

Demo usage and view source at http://www.riderinfo.com/

Compatibility
This hack is known to work on vBulletin 3.6.11 PL1 and will likely work back a few versions in the 3.6.x vBulletin series. Of course it works on 3.7.x as posted too.

HISTORY
1.2.2
added admin email on/off setting
moved hook code to files to reduce overhead.
1.2.1
Added Enable/Disable setting.
Fixed coppa includes file probem
Added file upload instructions to readme file.
1.2.0
Added JS timer to registration button.
Added enable/diable for email.
Removed ACP settings for random fields on rules and reg form pages and automated.
Reworded Pharses in ACP.
Recoded rules form and reg form edits.
Renamed variables for better code following.
Added more DB fields per user reg for tracking random automation.
New Hook on start_registration for functions.
Added new functions file. includes/stb_functions.php.
1.0.3
Changed input user name on rules form to random named hidden field with hash value.
Removed \n chars from email phrases.
All changes to registration are transparent to the folks registering.
Renamed DB username field to hash.
New hook on register_signup.
1.0.2
Added new Pre Reg Name hidden field to register form edits and ACP.
Added code to deal transparently with user deciding to change name after pre submitting it.
1.0.1
Fixed typo, changed 36000 to 3600 in product file.
1.0.0
Original Release.

Show Your Support

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

Comments
  #32  
Old 06-30-2008, 08:57 PM
noppid noppid is offline
 
Join Date: Mar 2003
Location: Florida
Posts: 1,875
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Boofo View Post
You DO suck up rather well.

But I think no changes for the user throws them off to what is really happening behind the scenes, which is what we want to do, right?
Well, I didn't really consider that at first. I originally set out to upset that. But the more you and others typed, the more I realized most want transparency. So, no big deal. I'm getting mellower with age.

It's done and working. I need a break and I'll take a look with fresh eyes in a while, run a test and post code. I want to be available when I post in case I missed something.
Reply With Quote
  #33  
Old 06-30-2008, 09:31 PM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you think about it, transparency is better for something like this as the bots won't see anything different and won't know what is up on the surface. If they experience changes in the way things usually are, they can adapt that much quicker. Simplicity at it's finest, so to speak.
Reply With Quote
  #34  
Old 06-30-2008, 10:54 PM
noppid noppid is offline
 
Join Date: Mar 2003
Location: Florida
Posts: 1,875
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Boofo View Post
If you think about it, transparency is better for something like this as the bots won't see anything different and won't know what is up on the surface. If they experience changes in the way things usually are, they can adapt that much quicker. Simplicity at it's finest, so to speak.
Posted for your review.
Reply With Quote
  #35  
Old 07-01-2008, 04:00 PM
AdrianH AdrianH is offline
 
Join Date: Sep 2007
Posts: 222
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

installed thanks.
Reply With Quote
  #36  
Old 07-02-2008, 01:20 PM
edward hamilton edward hamilton is offline
 
Join Date: Mar 2007
Posts: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Will this work with 3.6.8?

I'm planning on upgrading but won't have time to reinstall all my mods for at least three weeks.
Reply With Quote
  #37  
Old 07-02-2008, 04:38 PM
jesus likes pie jesus likes pie is offline
 
Join Date: Apr 2005
Posts: 342
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Not working for me.

I add the product but then when I hit Register, accept the terms and click continue it says I left a required field blank (never shows the form to register).

I am using this alongside the ajax registration and am using recaptcha as my image verification
Reply With Quote
  #38  
Old 07-02-2008, 05:27 PM
noppid noppid is offline
 
Join Date: Mar 2003
Location: Florida
Posts: 1,875
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by edward hamilton View Post
Will this work with 3.6.8?

I'm planning on upgrading but won't have time to reinstall all my mods for at least three weeks.
It might. I'm running it on www.riderinfo.com on vBulletin 3.6.10

Quote:
Originally Posted by jesus likes pie View Post
Not working for me.

I add the product but then when I hit Register, accept the terms and click continue it says I left a required field blank (never shows the form to register).

I am using this alongside the ajax registration and am using recaptcha as my image verification
Did you do the template edits in the instructions? Without them, that is exactly what will happen. Check your ACP settings for Stop the Registration Bots too.
Reply With Quote
  #39  
Old 07-05-2008, 04:44 AM
eruby eruby is offline
 
Join Date: Jun 2008
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by jesus likes pie View Post
Not working for me.

I add the product but then when I hit Register, accept the terms and click continue it says I left a required field blank (never shows the form to register).
I had the same problem. Went back and triple-checked that I had added the correct hidden fields to the correct templates as described in the text file. I had done everything correctly.

However, I had used some really long hidden field names using a mixture of upper-case letters, lower-case letters, and numbers. On a hunch I changed the hidden field names to some 8-to-10 character all lower-case letters and it started working.
Reply With Quote
  #40  
Old 07-07-2008, 02:28 PM
noppid noppid is offline
 
Join Date: Mar 2003
Location: Florida
Posts: 1,875
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the heads up. I didn't make any notes on the limitations of those fill ins.

I'm thinking of automating the process 100% and generating everything random on a per registration basis and using the table we have to store the values.
Reply With Quote
  #41  
Old 07-08-2008, 05:56 PM
noppid noppid is offline
 
Join Date: Mar 2003
Location: Florida
Posts: 1,875
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by eruby View Post
I had the same problem. Went back and triple-checked that I had added the correct hidden fields to the correct templates as described in the text file. I had done everything correctly.

However, I had used some really long hidden field names using a mixture of upper-case letters, lower-case letters, and numbers. On a hunch I changed the hidden field names to some 8-to-10 character all lower-case letters and it started working.
I edited the description fields to add text that clears that up. It should help.

We also eliminated 4 of the fill in fields and made them auto generated. We track them via the db and that makes things very random. The only field that won't change names unless the admin updates it is the hash field name on the rules and user reg page. Changing them once in a while will keep things very confusing.

I'm trying to get as close to possible to set it and forget it. We may me able to make a cron job that resets those too so things shake up very often and random.
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 11:25 PM.


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.05554 seconds
  • Memory Usage 2,324KB
  • 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
  • (6)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
  • (1)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