Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Identifying an unique visitor, the advanced way? (PHP/Java) [closed]

Tags:

java

php

ip

I'm founder of a major, so-called 'toplist'. The users can submit their website to the toplist and gain a higher position by obtaining votes for their toplist entry.

The average visitor is young, mainly between 13-20 years old. They bring benefits, but also disadvantages. Over the past 5 years I've been actively fighting 'cheaters' who're using robots to obtain votes. These robots used proxies, different user-agents and even managed to solve multiple kind of CAPTCHA questions (reCAPTCHA, SolveMedia and custom captcha's). The use of these robots has dramatically decreased since I've introduced a new system that makes a random lay-out and loads 1 out of 15 different CAPTCHA-systems each page load. It doesn't seem to be an issue any longer.

People have now moved onto manual cheating. They're using browser plugins that change their IP address on pretty much every page load (e.g.: https://addons.mozilla.org/en-us/firefox/addon/ipflood/). I really can't seem to find a way to fight this, but it's a very big issue. It's hard to believe, but these kids are even manually solving 5000 captcha questions, that's taking ages.

My question is, can anybody help me think of a way to solve this issue? I've been using cookie and session setting, but they've started to notice and remove them. I'm going to introduce user accounts and make it more interesting to vote through an account, but I don't want to require accounts. I doubt there is, but is there any other way left to fight the cheating (maybe like a Java web-app that evades browser-set proxies and passes the real IP to the page, if possible?)? Or should I just give up and hire people to do daily checks to see if it's possible for the site to gain so many votes?

like image 217
Jason Avatar asked Nov 24 '12 14:11

Jason


People also ask

Which of the following is used to identify visitors uniquely?

The measurement of unique visitors is based on cookies. A cookie is a file placed on a browser that contains an anonymous identifier. This ID can be used to uniquely identify a browser.

What's the difference between unique visitors and visits?

Difference Between Visits and Unique Visitors Visit refers to every person who visited your website in the reporting period. If one person visits the website 5 times, it'll count as 5 visits. A unique visitor, on the other hand, refers to a distinct individual user who visited your website in the reporting period.

How do I count unique visitors to my site?

A unique visitor is calculated by the IP address used to access a website. No matter how many times an IP address visits a page or website, it only counts once in the time period being measured. You can measure unique visitors across any period of time with web analytics tools.

What are unique visitors?

A unique visitor is a term used in marketing analytics which refers to a person who has visited the website at least once and is counted only once in the reporting time period. So if the user visits the web more than once, it counts as one visitor only.


1 Answers

I would recommend you to implement some kind of IP trustworthiness mechanism, because IP adresses used by open proxies are often used for illegal things.
So many of these adresses get caught by honeypots and are blacklisted by several organisations. Have a look at the honeypotproject for example:
https://www.projecthoneypot.org/
It's a huge database and can be easily implemented in PHP using DNS lookup functions. also
http://www.stopforumspam.com/
is pretty good and provides a REST interface if i remember it correctly.
In addition to that there are hundreds of DNSBLs that blacklist various kinds of activities, have a look at some proxy-dnsbls:
http://spamlinks.net/filter-dnsbl-lists.htm or http://dnsbl.tornevall.org/ or http://www.sorbs.net/

Last but not least you can use common PHP methods for proxy blocking (the most simple one qould be checking for the HTTP-X-Forwarded header, not all proxies provide it though)
Continue reading here: https://meta.wikimedia.org/wiki/Proxy_blocking or here: Detect clients with Proxy Servers via PHP

like image 177
Stefan Avatar answered Oct 23 '22 12:10

Stefan