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

Reply
 
Thread Tools
DNSBL/Open Proxy-Blocking Details »»
DNSBL/Open Proxy-Blocking
Version: 2.0.8, by TMM-TT TMM-TT is offline
Developer Last Online: May 2019 Show Printable Version Email this Page

Version: 3.5.x Rating:
Released: 09-14-2005 Last Update: 09-19-2008 Installs: 279
DB Changes Uses Plugins
 
No support by the author.

History

I've had some problems with abuse via open proxies for a time ago, and when we were banning abusers, they always found a new proxy to use and register new accounts with. Since this forum was a large type we could'nt just ban e-mails etc just like that, because this was leading to a very large amount of other banned users too.

At IRC, in the other hand, we had Open Proxy Monitors, that was banning everything that was blacklisted in some DNSBL-databases. No spammers had a chance to get in there as long they were listed in such database.

This is a plugin that blocks blacklisted hosts from some different DNSBL's. It uses the global_start-hook, a very simple handler for blocking proxies, and a vBphrase called OPM_Deny.


April 2006

The source has been rewritten a bit. The proxychecker is now using a cache that, by default, stores all ip's in a database for 6 hours. It scans some DNSBL's and can be configured to block proxies from bitmasks (defined in the plugin) which makes it a little bit more reliable, because it does'nt block everything it see).

Configuration is made from the plugin (hopefully there will be a nice admin interface in the future). Exceptions (ip's that can pass through this system even if it is a proxy) are also handled differently now.

// CHANGES
//
// 2008-09-20 (2.0.8)
//
// * Changed the routines for how to handle inclusion/exclusions
// * Splitted up plugins for 3.5/3.6 and 3.7
//
// 2007-08-05
//
// * Fixed reported bug, based on resolved hosts ending with 127
// * Changed database-tables to get rid of (hopefully) duplicate keys
// * Added resolver-function
// * Added two new block-methods available at the efnet-rbl
//
// 2006-06-28 (2.0.6/Another fix)
//
// * Proxyinclusions/exclusions didn't work properly
//
// 2006-06-28 (2.0.5/Fix only)
//
// * Fixed a bug in the $block-array that affected some of the blocking results
//
// 2006-06-28 (2.0.4)
//
// * opm.tornevall.org has a new entry for anonymizers, added support for this
// * Default value on "block everything detected" in plugin changed to "no"
//
// 2006-06-26 (2.0.3)
//
// * Created options for admincp (removed plugin-configuration)
// * Fixed a bit-bug for njabl
// * Plugin is now a function (rbl_livecheck) for external lookups
// * Added options for "only block on newuser-registrations"
//
// 2006-06-22 (2.0.3 RC)
//
// * The monitor is now a function
// * Added small compatibility with other plugins (with return)
//
// 2006-05-13
//
// * sorbs zones added (no bitmasking)
// * opm.blitzed.org removed
// * time() changed to TIMENOW
//
// 2006-04-21
// ==========
//
// * proxyinclusions
// quickly add own hosts that should be treated as a proxy
//


How does it work with other vBulletins?

This filter actually works with both 3.5 and 3.6, but for now, they will be separate versions, but for 3.5 and 3.6 you should look here and for 3.7 you should look here.


How to use the compatibility thing

If you have a plugin that you want to use together with the proxy monitor (only returns a value if a an ip-address is registered as a proxy or not) you can call the function rbl_livecheck like this (example):

PHP Code:
global $rblInstalled;

if (
$rblInstalled) {
$remoteIsProxy rbl_livecheck(1$_SERVER['REMOTE_ADDR']);

//
// .. your code here ..
//


Report bugs if you find them...



Don't forget to install it

Show Your Support

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

Comments
  #132  
Old 09-26-2006, 02:31 PM
pzykotic pzykotic is offline
 
Join Date: Sep 2006
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I just installed this on my forum and it blocked me. I'm using Optimum Online at home and a leased line from VERIO at work. No clue why both are blocked as proxies. Any thoughts?
Reply With Quote
  #133  
Old 09-26-2006, 03:15 PM
TMM-TT's Avatar
TMM-TT TMM-TT is offline
 
Join Date: Jun 2005
Location: Sweden
Posts: 212
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by pzykotic
I just installed this on my forum and it blocked me. I'm using Optimum Online at home and a leased line from VERIO at work. No clue why both are blocked as proxies. Any thoughts?
If you can't log in to your forum, enter

define(DISABLE_HOOKS, 1);

to your config.php so you can disable the blocker while you're investigating...

Then check www.tornevall.net/cgi-bin/ip.cgi if that page says where you might be blacklisted (I just wrote a FAQ about the blacklist part).

You can also add your ip into the configuration under "Exclude from monitor". Then it won't block you.

It looks like there's a few problems with proxyblocking on admins. I'll take a look on some solutions on this. Maybe a function for "only look for logged in" users, so you have a chance to login before getting blocked.
Reply With Quote
  #134  
Old 09-27-2006, 08:26 AM
Loony BoB's Avatar
Loony BoB Loony BoB is offline
 
Join Date: Mar 2004
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

My techy's response...

Quote:
Originally Posted by cl_out


Checking on logging in only wouldn't be good enough, especially if you tell your browser to "remember" to be logged in via cookies - you could even log in normally, then hop over to a proxy Checking whenever the user isn't a guest is good Of course, an option to only check when the user tries to post/PM/other database-changing function might be better than for every page request, but that's not important at the moment

I can always find out the answer to the error message question I asked by myself if we implement it, having access to multiple IP addresses simultaneously to post from I suppose the logging bit isn't that important right now either since I now noticed it says it caches IPs for a few hours, since we can then use an SQL query instead on the cache table, though it would be nice if with the IP it stored the username that attempted to connect from it in there as well
Reply With Quote
  #135  
Old 09-27-2006, 09:13 AM
TMM-TT's Avatar
TMM-TT TMM-TT is offline
 
Join Date: Jun 2005
Location: Sweden
Posts: 212
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Loony BoB
My techy's response...
Quote:
tell your browser to "remember" to be logged in via cookies - you could even log in normally, then hop over to a proxy

How about something like this?

Let's say someone is logging into a forum in the normal way. After this, he switch to a proxy. The RBL checks if there's any changes from the last activity (with a limit of like 10 minutes so we're sure we don't block all dynamic users - besides, it should only look after proxys anyway, so that might not interfere with normal activity), and if the new ip is detected as a proxy, the users again gets blocked...
Reply With Quote
  #136  
Old 10-03-2006, 08:00 PM
Loony BoB's Avatar
Loony BoB Loony BoB is offline
 
Join Date: Mar 2004
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've passed that on to my techy again. He's constantly going on about how it should include usernames in the proxycache at the moment... don't know if that's something you can do?

On a sidenote, is there any way for me to do a check on an IP to see if it is really an open proxy? I know there are sites that will check my own PC, but I'm not sure if there are sites that allow me to check other people's IPs. This would help me be reasonable when dealing with people who have complained that they can no longer get in.

PS. I have to say, you're definitely one of the more helpful guys I've experienced at these kind of boards. Thanks for your continuing assistance!

EDIT: Here's the response from our techy after quoting you to him...

Quote:
Originally Posted by cl_out
Yeah, I saw that post, but I thought that's how it worked anyway? I thought it checked if the user's IP is in the database, it uses that data. Then if the user hops to a proxy (or changes IP address because he's dynamic), obviously his IP will be different so I thought it would check again anyway? I didn't know it cached if the user was clean, then it remembers the user, regardless of his IP address.

I originally mentioned the possibility of the address changing in context of if you only checked when the user logs on rather than all the time like it currently does, which wouldn't be when you want to check anyway. When I asked about only checking for users logging on/are logged on, I should have made it clearer by saying we don't care to check guests (or spiders) if they're using a proxy or not, since they can't post anyway, hence only continuously checking actual users logged in
Reply With Quote
  #137  
Old 10-07-2006, 05:14 PM
DementedMindz DementedMindz is offline
 
Join Date: Jan 2006
Posts: 1,474
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

TMM-TT do you know if this works on 3.6.x
Reply With Quote
  #138  
Old 10-07-2006, 11:34 PM
TMM-TT's Avatar
TMM-TT TMM-TT is offline
 
Join Date: Jun 2005
Location: Sweden
Posts: 212
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by DementedMindz
TMM-TT do you know if this works on 3.6.x
Yes it does
Reply With Quote
  #139  
Old 10-08-2006, 12:01 AM
DementedMindz DementedMindz is offline
 
Join Date: Jan 2006
Posts: 1,474
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

thank you.
Reply With Quote
  #140  
Old 10-11-2006, 09:17 AM
Snake's Avatar
Snake Snake is offline
 
Join Date: Mar 2005
Location: Cleveland, OH
Posts: 3,832
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What about v3.6.2?
Reply With Quote
  #141  
Old 10-11-2006, 09:27 AM
venomx's Avatar
venomx venomx is offline
 
Join Date: Apr 2002
Location: Pennsylvania USA
Posts: 441
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by TMM-TT
Do you mean like if someone posts www.freeporn.com into the forum, that post should be blocked if it's listed in the BL?
That would be nice if it didnt slow the site down too much..
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 03:24 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.04841 seconds
  • Memory Usage 2,321KB
  • 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_php
  • (7)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
  • (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