Защита от накрутки?

iamFake

Mind Of Liberty
PHP:
	final public function getRealIp()
	{
		$ipAddr = $_SERVER['REMOTE_ADDR'];
		$maybeips = '';

		if (isset($_SERVER['HTTP_CLIENT_IP']))
		{
			$ipAddr = $_SERVER['HTTP_CLIENT_IP'];
		}
		else if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && 
				preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s', $_SERVER['HTTP_X_FORWARDED_FOR'], $maybeips))
		{
			foreach ($maybeips['0'] AS $ip)
			{
				if (!preg_match("#^(10|172\.16|192\.168)\.#", $ip))
				{
					$ipAddr = $ip;
					break;
				}
			}
		}
		else if (isset($_SERVER['HTTP_FROM']))
		{
			$ipAddr = $_SERVER['HTTP_FROM'];
		}

		return $ipAddr;
	}
этим я определяю IP адресса.

Не прозрачные прокси некто не отменял.

помоему, подделать адресс и после еще и получить ответ, ушедший на ентот адресс, можно только в пределах одного сегмента сети и если по пути нет маршрутизатора...
 

SiMM

Новичок
iamFake, ну и что мне помешает сформировать запрос с любым содержимым X-Forwarded-For?
 

kav78

Новичок
iamFake
Да определяешь, но это только билайн, а про X-Forwarded-For его моно подделать

-~{}~ 03.04.07 08:55:

У меня тут мысля назрела по защите от накрутки, вот как ее воплотить?
Суть мысли:
каждому присвоен свой id.
Если за время 1мин произвелись 10 записей в мускул с одного id, то бан.
 

Фанат

oncle terrible
Команда форума
iamFake
пожалуйста, свою глупость демонстрируй в другом месте
 

kav78

Новичок
Фанат
Почему глупость, если чел. регистрируется, получает id, а потом если он захотел накрутить счетчик, то он же указывает свой id, а скрипт анализирует, если за 1 мин этот id кликнул 10 раз с одинаковым ip, то бан
 

kruglov

Новичок
kav78
Регистрация - это хорошо. Но надо теперь уже обеспечить, чтобы зарегистрироваться 1000 раз нельзя было.
 

Бамбук

Новичок
тык.
если у тебя только регистрированные пользователи могут двигать счетчик, то проблемы твои не понятны ;)
нормальную авторизацию сделай и все.
ну и проверку на количество кликов в период времени.
 

kav78

Новичок
и проверку на количество кликов в период времени.
как сделать выборку по времени из мускула?Если за время 1мин произвелись 10 записей в мускул с одного id.
 

Фанат

oncle terrible
Команда форума
проблемы его просты и понятны.
ему велено сделать счётчик. напугано финансовыми вопросами.

счётчиков он никогда не писал и не знает что это такое. вот и боится всего на свете.
любые проблемы, "накрутки" и борьбу с ними представляет себе сильно в теории.
и тема данная может длиться бесконечно, до тех пор, пока человек нае сядет, не сделает, и не начнёт получить реальный опыт от реальной эксплуатации
 

RBCL

Новичок
При желании подделать можно все, однако от накруток вас это не спасет. Самый простой спобоб накрутки вашего счетчика - не надо даже быть шибко умным чтобы купить несколько карточек диалаперных провайдеров и подключаться/отключаться до желаемого колличества уникальных IP адресов. А учитывая, что у некоторых провайдеров есть "бесплатная минута" - это вообще можно делать даром.
Эта проблема может решиться только пирожком.
Однако опять же более-менее сведующий пользователь удалит куку и снова в бой.
Если уж рамблер и мейл.ру не решили этой проблемы, то о каких "программистах с прямыми руками который не допускает банальных инъекций" может идти речь? Не стыдно?
 
Сверху