I bumped into an unintended side effect of using the Http-Referer as a definitive proxy marker. It seems it has killed off most of the CoDeeN proxies, which do not return an Http-Referer.
Of course, they do, but the only thing I use to detect CoDeeN servers is the infamous “(Not Really) Welcome” page they shove in your face when you first connect. After ten seconds they give you the page you requested (which, being a proxy judge page, does have the Referer), but by then I’ve closed the connection and moved onto the next proxy anyway.
And here’s an interesting tidbit about CoDeeN: they keep track of who they think you are by looking at your IP address and User-Agent. If they have seen your IP+UA before within a certain timeout period, you don’t get the welcome page.
For some reason they seem to think the IP+UA is a unique identifier (probably a hash of some sort). Since I can’t change my IP, I guarantee the User-Agent is always unique by stuffing it with random numbers. Microsoft has made this a piece of cake by adding the “.NET CLR [1-3].[0-9].xxxxx.[0-9]” extensions to the User-Agent field of Internet Explorer. Since there are no less than three versions of dot-NET compatibility (this week) plus multiple versions of IE and Windows platforms there’s a lot of room for randomness in those numbers.
This also gives you a modicum of plausible deniability with CoDeeN when they call the cops on you, since it’s highly improbable than any of those User-Agent values are actually valid (and they obviously don’t check).
Since there are often multiple ports on any CoDeeN server and servers at the same location with different IP addresses probably use the same backend IP+UA database, you have to change the User-Agent every time you test or you will get an invalid result (that is, it will not be an obvious CoDeeN server).
Even though no one gives a rat’s ass about CoDeeN servers, I thought it was important enough to fix. You really should be aware of them, especially if you want to avoid them. That’s why it’s important to detect them properly.
Still, I can’t help wondering if there’s some server room Trevor at PlanetLab scratching his head over all those weird MSIE User-Agents that have shown up in the database over the last year…