Proxy Blocker by Pri

A place to download and discuss the latest WinMX software by Pri

Moderator: DrGirlfriendMD

User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Sun Dec 04, 2011 1:17 pm

If you'd like to use the Proxy Blocker API in your own software we use https://proxycheck.io for it. You can just head right there and get free access to a great Proxy and VPN detection API.

Enjoy!
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Sun Sep 01, 2013 9:28 pm

New update today, you can now add IP's to your local whitelist by simply using !ProxyPardon followed by the IP Address (Like !ProxyPardon 127.0.0.1) this both adds that IP to the local whitelist file and also overwrites that IP Addresses local cache file detailing the user who pardoned the IP.

This is restricted by access level, you need to be an @ or higher in the room to use this command.
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Tue Apr 15, 2014 6:35 pm

Proxy Blocker v1.6 is going to be released in a few days. Probably Thursday.

This is I think the 3rd major rewrite to the Proxy Blocker. About 30% of it has been changed. It no longer uses the WinMXUnlimited API in any capacity. Everything is now developed solely by me including the pre-emptive ban system.

Main features of the client side script:
  • 2x faster querying speed
  • Support for v2 of the Proxy Blocker API
  • Support for API changing without new client side code
  • Support for a future key code system coming in API v3
  • Support for signed API Responses
  • Removal of Analytical API queries (for speed)
  • Addition of Verbose mode
Features of the Proxy API v2:
  • Faster response on big data sets (1 Million+ IP Database Querying in under 100ms)
  • Analytical API Burden moved from Client to API
  • Support for Pre-emptive Banning built in
  • Every IP Response is signed for accuracy
  • And did I mention speed? I think I did, it's faster.
I'm currently having the client v1.6 which uses the new v2 API tested in four rooms. They all received a second development version this afternoon, testing is going well :)
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Thu Apr 17, 2014 8:24 am

v1.6.1 of the Proxy Blocker has been released. It was going to be the 3rd development version but it didn't change anything that couldn't have been tested by me privately so I decided to promote it to the release version as it is stable.

If you use wget then your Proxy Blocker will update itself either today or tomorrow. If not you can just download the new file and replace your old one then reload your bot.

The new version is as the post above describes, very fast. Two times faster at banning proxies in fact. It now uses a new MXPulse API for everything including pre-emptive bans. This is quite a good update that gives the most requested feature: faster banning.

In-fact in testing it was able to ban proxies under 1 second from entry and I was even unable to see the room load before my test proxies were banned so I'd say that is a good improvement over the previous version.
RebelMX
Member
Member
Posts: 1
Joined: Sun Dec 11, 2011 9:07 am

Re: Proxy Blocker by Pri

Sat Apr 19, 2014 7:54 am

Hey Pri,

Nice script. I only have a single criticism for you which is not meant to offend but to aid further improvements/redevelopments of the code.

Your settings and calls to the server are made on each and every join by a user. Would it not make more sense to load most of the settings when the bot joins using a OnJoin to self call a command to load the settings, then the command could be manually triggered by the admin and self triggered on entry? Then the only checks/settings needed to be completed on every join would be to test your api server is online and then call the proxy blocker api?

The setup would be required before the first person enters really otherwise it may/will delay the blocker for the first user entering from your very speedy 250ms. The special characters will remain constant so only needs getting once each time the bot "starts up".
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Sat Apr 19, 2014 10:35 am

You'll notice in the code that it only downloads the settings it needs if it has not already downloaded them. That is what the == conditions are for on each of the things that it downloads such as the metis readweb compatibility check file and the metis version compatibility check file but also for the API health statuses.

For example:
// Download anti-proxy setup data from the MXPulse API

<out type="push" extdata="PBS_Proxy_API_URL" condition="==" lvalue="%USERVAR[PBS_Proxy_API_URL]%" rvalue=""><operator type="readweb" nvalue="http://proxy.blocker.mxpulse.com/API.Status.php" lvalue="l" rvalue="4"/></out>

<out type="push" extdata="PBS_MXPulse_API_Status" condition="==" lvalue="%USERVAR[PBS_MXPulse_API_Status]%" rvalue=""><operator type="readweb" nvalue="http://proxy.blocker.mxpulse.com/API.Status.php" lvalue="l" rvalue="3"/></out>

<out type="push" extdata="PBS_MXPulse_PreEmptiveBan_Status" condition="==" lvalue="%USERVAR[PBS_MXPulse_PreEmptiveBan_Status]%" rvalue=""><operator type="readweb" nvalue="http://proxy.blocker.mxpulse.com/API.Status.php" lvalue="l" rvalue="2"/></out>

<out type="push" extdata="PBS_Local_Script_Cache" condition="==" lvalue="%USERVAR[PBS_Local_Script_Cache]%" rvalue=""><operator type="readweb" nvalue="http://proxy.blocker.mxpulse.com/API.Status.php" lvalue="l" rvalue="1"/></out>
You can see here on each entry it lists this: condition="==" lvalue="%USERVAR[#####]%" rvalue=""

That means that the variable has to be blank for this readweb line to run. Thus it only downloads this data the very first time someone enters your chat room, for all other runs it doesn't do it.

These internal caches can be refreshed by performing !proxy status however, which I added mostly for debugging when I'm helping someone with the script.

EDIT:// Also just so I don't forget.

Right at the bottom of the OnEnter script there is a version checker, this only runs if the user who entered the room wasn't using a Proxy Server. That is what this line is for:
// Break here if this is a proxy, only check for updates when the user has not been detected as a proxy
<out type="break" condition="!=" lvalue="%USERVAR[Proxy_UI_Result]%" rvalue="0"></out>
So essentially it only does its heavy lifting (checking for updated versions) when a non-proxy enters the room. It also only checks for updated versions once per day anyway.

So to recap the very first person who enters the room after you've just turned your bot on will cause about 6 Web queries to be performed. However 3 of those queries are loaded from a local file cache, so it's technically just 3 queries. Then if that user is not a proxy then it will perform a version check so that makes it 4 queries total. The next person who enters only causes 1 query and all other connections also only cause 1 query until the following day when a new version check will be performed. :)
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Sun May 04, 2014 6:46 pm

With the new Proxy Blocker API v2 I've also written a control panel to allow me to easily add and remove websites which lists open proxies for people to use. I thought it would make an interesting post so I've taken a screenshot.

Using this I can specify the IP's it scans for, view when the last scans occurred, how many Proxy Servers were determined as working and added to the database and view the API health (if it's responding to queries properly). Not all the sites I use have been added to this list yet as I'm still writing and testing it but all the features on the page right now work as they should.

Image
RedCat
Member
Member
Posts: 1
Joined: Sat May 24, 2014 9:28 am

Re: Proxy Blocker by Pri

Sat May 24, 2014 10:04 am

Hey Pri!

First of all, I am not sure what this board is about.
But I really like your Proxy Check API.

I need something like this for my site. But I have +1million queries per day.
Of course I don't want to abuse your free service ;-)

Do you offer a database which I can download so I could implement this on my own server?
Or what else could I do?

Thank you!
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Sat May 24, 2014 12:57 pm

PM Sent with an export download link ;)
User avatar
Pri
Site Admin
Site Admin
Posts: 5433
Joined: Fri Dec 14, 2007 8:59 am

Re: Proxy Blocker by Pri

Fri Aug 29, 2014 11:26 am

With the recent spamming that is going on in WinMX I have started to upgrade the API again. It now includes five separate levels (0 to 4) of querying for performance

LVL0 = Cache of the last 5 Minutes of positive hits (Usually <100 Entries)
LVL1 = TOR Check (2.5K Entries as of this post)
LVL2 = SOCKS4/5/Web Check (112K Entries as of this post)
LVL3 = Compromised Servers (128K Entries as of this post)
LVL4 = Direct connection is established to the IP and common proxy ports are tested for an active proxy server

LVL0 and LVL4 are brand new. It works in sequence from 0 to 4 for performance. Each level of checking takes more time and is more intensive which is why it is staggered in this way. The new LVL4 detection is pretty robust and does including two separate levels of caching for positive and negative detections so repeated queries will not cause undue load or allow resource stealing attacks. Similarly the LVL0 cache is also designed to mitigate resource stealing attacks as it takes less than 1ms to query.

This API has a new version indicator @ Proxy.API.v3.php?ip= and is in testing right now. I will push it live to everyone who has the latest Proxy Blocker soon through the settings update API present in versions 1.6.1 and 1.6.2 of the Proxy Blocker client software for Metis.

All previous features including signed responses are still intact in this API and the responses you can receive are still 0, Tor and Live.

Return to “Scripts & WinMX Related Software”

Who is online

Users browsing this forum: Google [Bot] and 5 guests