Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Ограничение попыток логина
Покинул форум
Сообщений всего: 356
Дата рег-ции: Июнь 2013 Откуда: Ставропольский край
Помог: 10 раз(а)
[+]
Столкнулся с такой вот проблемой - как организовать блокировку при N-ном количестве неудачных попыток входа на сайт?
Гуглил много, но ничего путного на эту тему нет. Все сводится к блокировке по IP или что еще хуже по целой подсети.
По сути, когда кто-то стучится в форму входа, то мы знаем UserAgent и IP, и то не факт что знаем. Блокировка по IP, UserAgent или даже их совокупности никак не подходит. Скажем сидят у нас Петя, Вася, Коля и Маша, все используют фаерфокс одной версии и все в одной локальной сети с одним внешним IP. Маша постучалась в форму 5 раз - я ее заблочил по UserAgent и IP. И что? Петя, Вася, Коля тоже получать сообщение что они исчерпали попытки входа.
Есть у кого-нибудь мысли? Или кроме IP ничего нет
----- ПЫХ тут - ходи туда, прежде чем писать сюда (толку больше будет)
teddy
Отправлено: 07 Ноября, 2013 - 16:59:57
Участник
Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013
Помог: 91 раз(а)
Физически узнать конкретного пользователя врядли получится. Как вы сказали выше, это может быть и Вася и Петя и многие другие. Поэтому первое что приходит в голову, это запрещать авторизоваться под этим логином некоторое время.
К примеру если 5 раз к Hapson был введен неверный пароль, то доступ блокируется на час только для Hapson.
Банить айпишник и проверять юзер агенты думаю смысла нет(разве что для статистики)
Kandiar
Отправлено: 07 Ноября, 2013 - 17:01:28
Новичок
Покинул форум
Сообщений всего: 14
Дата рег-ции: Нояб. 2013
Помог: 1 раз(а)
Используй Cookie
teddy
Отправлено: 07 Ноября, 2013 - 17:02:40
Участник
Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013
Помог: 91 раз(а)
Kandiar пишет:
Используй Cookie
А разве сложно эту куку удалить и логиниться снова пока не прилетит следующая, а потом снова удалить и так по кругу?
Kandiar
Отправлено: 07 Ноября, 2013 - 17:07:39
Новичок
Покинул форум
Сообщений всего: 14
Дата рег-ции: Нояб. 2013
Помог: 1 раз(а)
teddy пишет:
Kandiar пишет:
Используй Cookie
А разве сложно эту куку удалить и логиниться снова пока не прилетит следующая, а потом снова удалить и так по кругу?
Ну это понятно. Но по IP банить тупо. Если у человека динамический IP то его нет смысла баните его так.
Покинул форум
Сообщений всего: 356
Дата рег-ции: Июнь 2013 Откуда: Ставропольский край
Помог: 10 раз(а)
[+]
teddy пишет:
Физически узнать конкретного пользователя врядли получится. Как вы сказали выше, это может быть и Вася и Петя и многие другие. Поэтому первое что приходит в голову, это запрещать авторизоваться под этим логином некоторое время.
К примеру если 5 раз к Hapson был введен неверный пароль, то доступ блокируется на час только для Hapson.
Банить айпишник и проверять юзер агенты думаю смысла нет(разве что для статистики)
Не хотел привязываться к логину, но видимо другого варианта нет.
Маша-хакер может перебирать не только пароли, но и комбинации логин/пароль.
И опять косяк...
Допустим Вася узнал логин Пети и начал подбирать пароль. Тут раз - Васю заблочили, а он ни сном и не духом... (Добавление)
Kandiar пишет:
Если у человека статический IP то его нет смысла банить по IP
Не понял смысла сей фразы.
Если у человека статический IP, то его как раз таки можно забанить по IP, но косяк в том, что под этим IP могут сидеть еще пару десятков человек.
Нет смысла банить динамические IP. А так как мы никогда не знаем о том, динамический IP или статический, да и вообще, может это прокси, то смысла банить по IP вообще нет
----- ПЫХ тут - ходи туда, прежде чем писать сюда (толку больше будет)
teddy
Отправлено: 07 Ноября, 2013 - 17:11:38
Участник
Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013
Помог: 91 раз(а)
Hapson пишет:
Маша-хакер может перебирать не только пароли, но и комбинации логин/пароль.
Ну если будет "перебор", то скорее всего 5 раз не хватит для подбора. Если конечно пароль не 123456. Можно принудительно при регистрации заставлять ставить сложный пароль
Hapson пишет:
Допустим Вася узнал логин Пети и начал подбирать пароль.
Так это же вам на руку. Вы защищаете своих пользователей, если Вася будет ломать Петю, то возможно на 10-ой попытке он уже попадет в его аккаунт, но нет, вы его забанете на 5ой и он останется с носом.
И что бы Пете не было проблемно восстановить бан, то можно что то ему отправить на e-mail для разбана(ссылку например), или специальную форму выдать, куда он должен ввести например ответ на секретный вопрос... (Добавление)
Покинул форум
Сообщений всего: 14
Дата рег-ции: Нояб. 2013
Помог: 1 раз(а)
Hapson пишет:
teddy пишет:
Физически узнать конкретного пользователя врядли получится. Как вы сказали выше, это может быть и Вася и Петя и многие другие. Поэтому первое что приходит в голову, это запрещать авторизоваться под этим логином некоторое время.
К примеру если 5 раз к Hapson был введен неверный пароль, то доступ блокируется на час только для Hapson.
Банить айпишник и проверять юзер агенты думаю смысла нет(разве что для статистики)
Не хотел привязываться к логину, но видимо другого варианта нет.
Маша-хакер может перебирать не только пароли, но и комбинации логин/пароль.
И опять косяк...
Допустим Вася узнал логин Пети и начал подбирать пароль. Тут раз - Васю заблочили, а он ни сном и не духом... (Добавление)
Kandiar пишет:
Если у человека статический IP то его нет смысла банить по IP
Не понял смысла сей фразы.
Если у человека статический IP, то его как раз таки можно забанить по IP, но косяк в том, что под этим IP могут сидеть еще пару десятков человек.
Нет смысла банить динамические IP. А так как мы никогда не знаем о том, динамический IP или статический, да и вообще, может это прокси, то смысла банить по IP вообще нет
Не успел исправить свое сообщение) Я Имел ввиду динамический IP.
Цитата:
да и вообще, может это прокси, то смысла банить по IP вообще нет
Совершенно правильно! Зачем банить по IP? Норм. хакер всегда использует прокси
Покинул форум
Сообщений всего: 356
Дата рег-ции: Июнь 2013 Откуда: Ставропольский край
Помог: 10 раз(а)
[+]
Как же быть с программами для перебора?
Замерять время между попытками входа?
----- ПЫХ тут - ходи туда, прежде чем писать сюда (толку больше будет)
Kandiar
Отправлено: 07 Ноября, 2013 - 17:22:20
Новичок
Покинул форум
Сообщений всего: 14
Дата рег-ции: Нояб. 2013
Помог: 1 раз(а)
Hapson пишет:
Как же быть с программами для перебора?
Замерять время между попытками входа?
Просто сделать капчу. К примеру собери рисунок - https://www[dot]keycaptcha[dot]ru
Да и замерять время нет смысла. Т.к. можно спокойно сделать задержку перебора
Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013
Помог: 91 раз(а)
Предлагаю сделать так: Если независимо от времени 5 раз подряд был введен неверный пароль(с учетом того, что не было успешной авторизации), тогда баним и отправляем почту и подсказываем типа "Забыли пароль?". Если пользователь знает свой пароль, то введет его хотя бы на 5ый раз. Иначе это взлом либо он просто забыл пароль. А если например 4 раза пароль неверный, а на 5-ый удалось авторизоваться, значит обнуляем счетчик и так по кругу.
Kandiar
Отправлено: 07 Ноября, 2013 - 17:33:01
Новичок
Покинул форум
Сообщений всего: 14
Дата рег-ции: Нояб. 2013
Помог: 1 раз(а)
teddy пишет:
Предлагаю сделать так: Если независимо от времени 5 раз подряд был введен неверный пароль(с учетом того, что не было успешной авторизации), тогда баним и отправляем почту и подсказываем типа "Забыли пароль?". Если пользователь знает свой пароль, то введет его хотя бы на 5ый раз. Иначе это взлом либо он просто забыл пароль. А если например 4 раза пароль неверный, а на 5-ый удалось авторизоваться, значит обнуляем счетчик и так по кругу.
Неплохой вариант. Обычно так и делают, бывают и смс шлют после n кол-ва неудачных попыток.
После 5 неудачных попыток просто на почту пользователю шлем письмо - вас пытались взломать, для восстановления аккаунта пройдите по ссылке...
Покинул форум
Сообщений всего: 356
Дата рег-ции: Июнь 2013 Откуда: Ставропольский край
Помог: 10 раз(а)
[+]
teddy пишет:
Предлагаю сделать так: Если независимо от времени 5 раз подряд был введен неверный пароль(с учетом того, что не было успешной авторизации), тогда баним и отправляем почту и подсказываем типа "Забыли пароль?". Если пользователь знает свой пароль, то введет его хотя бы на 5ый раз. Иначе это взлом либо он просто забыл пароль. А если например 4 раза пароль неверный, а на 5-ый удалось авторизоваться, значит обнуляем счетчик и так по кругу.
Ну да, примерно так. После трех попыток показать капчу, после пяти заблокировать и отправить письмо.
----- ПЫХ тут - ходи туда, прежде чем писать сюда (толку больше будет)
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.