Оцените логику зищиты от накрутки голосований
Логика действий рейтинга
1. Регистрация пользователя - генерация кода активации e-mail - отправка кода активации на e-mail пользователя - сохранение кода активации в таблице пользователя 2. Активация пользователя по e-mail - проверка идентичности кода активации 3. Установка COOKIE - генерация уникального кода для куков - сохранение сгенерированного кода в таблице пользователя - создаем куку с именем «user»+id_пользователя, и значением сгенерированного кода - выдаем пользователю сообщение вида: «Вы сможете проголосовать через сутки» 4. Возвращение пользователя на следующий день - проверка значения куков на идентичность 4.1. Куки не совпадают - задаем новые куки, с новым сгенерированным числом - выдаем сообщение, что «куки были повреждены и т.д. … чтобы проголосовать вернитесь на следующие сутки» - возвращаемся к пункту 4 4.2. Куки совпадают - появляется ссылка «Проголосовать» 5. Голосование - считываем ip пользователя - проверяем, голосовал ли кто-то сегодня с этого ip 5.1. С этого ip уже голосовали - Вывод пользователю информации о невозможности голосования, т.к. с данного ip адреса уже голосовали 5.2. С этого ip не голосовали - обновляем код в куках и записываем его в таблицу пользователя - прибавляем 1 голос в голосовании - Выдаем сообщение об успешном голосовании и что проголосовать еще раз будет возможно на следующий день - возвращаемся к пункту 4 |
Капча при регистрации есть? Если нет, то толку от всего остального мало — это лишь усложнит жизнь накрутчикам. (Как и сама каптча, впрочем)
|
Значит рекомендуете поставить капчу? Ну если это важно то конечно поставим. Можете посоветовать капчу? (просто знаю много разных, хотелось бы узнать мнение профи)
|
Боту-скрипту потенциально не проблема зарегистрироваться, сбегать на мыло, подтвердить регистрацию, подцепить куки, проголосовать, сменить IP и зарегистрировать новый аккаунт (Собрать, допустим, базу из 1000 аккаунтов и каждый день с каждого из них голосовать).
Каптч, к сожалению, порекомендовать не могу. Сам собирался использовать kcaptcha (с небольшими доработками), но необходимость отпала. Стойкость каптчи зависит от метода взлома. Мне известны 3: — Математические. С помощью различный алгоритмов и обученных нейросетей производится автоматическое рапознавание. Нейросети обычно обучаются большим количеством исходных данных (читай — вариантами цифр). В таком случае Kcaptcha кажется мне достаточно надежной. Особенно если прикрутить туда побольше разных шрифтов. — Брут-форс. При небольшом количестве вариантов вероятность успешного брута возрастает. Например, если у нас на каптче 3 цифры, то это всего 999 вариантов, т.е. из 1000 запросов как минимум один должен пройти (с теорвером не знаком, не пинать). Это касается не столько привычных каптч ввода текст, сколько всяческих альтернатив вроде "передвинь квадрат на круг" и т.д. — Китайцы. Дешевая раб. сила, набирающая за пару центов текст с картинки. Против таких приемов нет. Хотя можно, например, использовать национальный алфавит. Вряд ли у этих "обезьянок" есть под рукой клава с русским алфавитом. (Ну или использовать это :) ) P.S. А зачем Вы проверяете, голосовали ли с IP, если у Вас пользователь зарегистрирован? Проверяйте еще и id юзера. |
никакой регистрации, никаких капчей, проверка по ip и всё. Сообщение выдавать "спасибо что проголосовали". Хотите совсем жёстко - привяжите к ip+email. А то со всеми вашими суперпроверками вообще голосовать не будут. Имея же базу с ip можно отсеить ненужный спам(на случай голосования через прокси).
|
Цитата:
Цитата:
B@rmaley.e><e, А что вы думаете об этой капче? Цитата:
Поэтому нужно максимально осложнить жизнь накрутчикам, и при этом не забыть про пользователей и дать им удобную систему голосования. |
Цитата:
|
Gozar,
А как вы предлагаете привязываться к ip? Не давать пользователям заходить с ip, отличного от того, с которого зарегистрировались? Или как? ... не совсем Вас понял... |
greatilya,
1. жестко по ip: 1 ip 1 голос в день 2. мягко по ip: 1 ip несколько email(аккаунтов) в день + фильтрация на китайские прокси(по необходимости) |
Цитата:
|
потому что их больше ;)
отлавливайте все. |
Цитата:
|
Вобщем сейчас тогда склоняюсь к проверке прокси, активация по е-майл, капча при регистрации.
Если кто-то сможет еще что-то подсказать. то буду очень признателен... |
скан паспорта и юридически заверенный письменный договор ;)
|
Что касается каптчи, то я думаю, что для защиты от ботов лучше использовать несколько алгоритмов и время от времени изменять их, как сделано на webmoney. По крайней мере боты отпадут.
Ну а если голосование серьёзное (выборы например:D ), без регистрации никак. Отпадают и IP и куки. Например, на сайте csmon.ru я за свой сервер набивал по 50 голосов в день (ручками), мне этого хватало для пребывания в топе, пока они снова не обнулят голоса. Дк там ip+cookie+каптча:) |
B~Vladi,
как по Вашему мнению, какая система лучше? Та система которую описал в первом сообщении используется на таких воротилах как l2top.ru, la2.mmotop.ru ... и т.д. Может и не стоит изобретать велосипед? По поводу прокси: сейчас зашел на сайт l2top.ru через сервис hideme.ru. Как я понимаю он эмулирует заход с прокси сервера. Поскольку сайт запустился, предположу, что на сайте l2top.ru нет фильтра на прокси... Так может в этом есть смысл? И может запрет на использование прокси повлечет за собой некие последствия? Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Ну да и ладно, немного отошли от темы. Нужен ли фильтр на прокси или он только навредит проекту? Как вы думаете? |
Цитата:
Цитата:
|
Всем спасибо!
Скоро покажу что получилось... |
Если вы будите по IP людей считать, имеете хороший шанс потерять %80 потенциальных голосующих. Вобще по IP кого-то ограничивать возможно при условии, если у всех IPшники выделенные, короче используйте IP в других целях.
Если голосование простое, то одной капчи достаточно. Если нужен учёт активности пользователей, то Id пользователя+капча. Если вас будут спамить, меняйте сразу же алгоритм защиты(капчи) или блочте по IP (крайний случай). Правильно и своевременно определите атаку - это и будет ваша лучшая защита. |
|
я бы сделал так, если 1 пользователь может проголосовать только 1 раз в день то я сделал бы таблицу в которую писал следующие данные, - id(autoincrement) , id пользователся, id статьи или чего у вас там, оценку, и время в которое проголосовал, а дальше делал бы при голосовании проверку, если существует такая запись и время от текущего меньше 24 часов то не давал бы голосовать, и еще сделал бы скрипт который каждый час удаляет из таблицы записи которые старше 24 часов. очень просто , удобно, минимум кода , минимум гемора, каптча при голосованнии имхо бред, просто голосовать надо давать зарегеным юзерам, а каптчу давать только при регистрации. Я практически так же сделал у себя. Посмотрите например на rutube , у них разве надо каптчу вводить когда голосуешь? голосование там прикрепляется к ролику и всё. ip и cookie не спасут тебя о ботов, например в корбине при каждом подключении у тя новый айпишник, а куки почистить может даже школьник. Труднее всего регестрировать постоянно аккаунты , но и сдесь грабли не надо под ноги ставить а то все твои юзеры плюнут на твой сайт и уйдут куда подальше. если у тебя будет 1 000 000 юзеров то подумай сам, если 1 школьник накрутит себе даже 200 голосов, то его рейтинг не особо изменится по отношению к другим, это надо понимать и не заниматься ерундой
|
Какой-то студент однажды на лекции видно от нефиг делать придумал символическую каптчу и все за ним с тех пор повторяют. Да сколько угодно более устойчивых иных вариантов проверки существует, нежели эта дурацкая символика : /
|
Цитата:
|
Часовой пояс GMT +3, время: 00:48. |