Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.08.2010, 20:11   #1
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию php флуд защита

Как сделать защиту от того чтобы при допустим загрузке одной страницы более 5 раз в секунду выдавало html типа как у контакта "Вы попытались загрузить более одной однотипной страницы в секунду. Вернитесь назад и повторите попытку."
Horus92 вне форума Ответить с цитированием
Старый 17.08.2010, 21:31   #2
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

cookie тебе в помощ=) И условия)
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 18.08.2010, 07:33   #3
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

cookies можно легко обойти. Надо использовать таблицу on-line пользователей с записью времени обновления и конечно логирование.
Виталий Желтяков вне форума Ответить с цитированием
Старый 18.08.2010, 08:23   #4
Nexta_s
Пользователь
 
Регистрация: 18.08.2010
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
cookies можно легко обойти. Надо использовать таблицу on-line пользователей с записью времени обновления и конечно логирование.
стартуйте именованную сессию, отметки в coookes и т.д
Nexta_s вне форума Ответить с цитированием
Старый 18.08.2010, 10:18   #5
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

С сессиями тоже можно, но в этом случае такую защиту можно обойти используя несколько однотипных подключений, т.к. для каждого будет своя сессия. В этом случае необходимо реализовать защиту от двойных сессий.
Виталий Желтяков вне форума Ответить с цитированием
Старый 18.08.2010, 10:48   #6
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию

та без разницы через обьясните хотя бы как действует алгоритм опознавания колва раз а там я уже разберусь на чём
Horus92 вне форума Ответить с цитированием
Старый 18.08.2010, 16:34   #7
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Определяешь кто обновил страницу (имя пользователя или его id), определяешь когда он обновил страницу в последний раз. Если больше 5 секунд назад, то просто записываешь новое время обновления туда. Если меньше 5 секунд назад, то записываешь в специальную переменную пользователя, например 1. Снова обновил страницу и снова меньше 5 секунд прошло - записываешь туда 2. В третий раз вместо страницы пишешь ему "хватить жать F5!". Усё...
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 23.08.2010, 13:24   #8
maximka787
 
Регистрация: 08.11.2007
Сообщений: 7
По умолчанию

Вопрос такой, а если несколько разных людей выйдут в инет от одного провайдера и с одним внешним IP? тогда нельзя блокировать по IP вообще. или я неправильно понял?)
maximka787 вне форума Ответить с цитированием
Старый 23.08.2010, 13:49   #9
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Блокировать-то можно будет, но забанятся все пользователи, сидящие под этим айпи. В таких случаях в нагрузку можно еще добавить проверку по куках, но опытный юзер сможет обойти это.
SkyM@n вне форума Ответить с цитированием
Старый 24.08.2010, 00:57   #10
maximka787
 
Регистрация: 08.11.2007
Сообщений: 7
По умолчанию

Цитата:
Сообщение от SkyM@n Посмотреть сообщение
но опытный юзер сможет обойти это.
опытный то это пол беды , а вот от дурака надо прописать все как следует. Разъясните пожалуйста, получается что защита от частого "F5" лучше всего реализовать на онлайн таблице сессий и/или куках?
maximka787 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP test.php?a=1&b=1 не работает передача параметров бедный_студент PHP 5 25.08.2010 23:08
Защита кода Php Shyt Свободное общение 27 31.07.2010 10:13
Sorry за флуд,просто очень помощь нужна... gluk9090 Microsoft Office Access 4 12.05.2008 00:53
реализовать в локалке пинг флуд Небесный Работа с сетью в Delphi 15 02.11.2007 04:07