Подскажите оптимальный вариант защиты от перебора паролей к аккаунту
Получаю пароль и логин $_GET.
$IP=$_SERVER['REMOTE_ADDR'];
SELECT на такой $IP в таблице попыток входа.
если нет то добавляю $IP, DATETIME1(sysdate()), DATETIME2(sysdate()), LOGIN_COUTER(1) .
если есть то проверяю LOGIN_COUNTER и DATETIME2(sysdate())
если LOGIN_COUNTER меньше 10 то LOGIN_COUNTER++;
если больше то $Bye=1;
если $bye == 0 то
SELECT в таблице на предмет такой связки.
если нету то сообщение мол "не правильно введен логин или пароль".
если $bye =1 то сообщение "попробуйте через 2 минуты + DATETIME2 +2минуты
Это нормально?)
какие минусы и плюсы, или посоветуйте как лучше сделать
Гораздо проще поставить капчу и требовать от пользователей определенный уровень сложности паролей (не менее 6 знаков например, наличие букв в обоих регистрах и цифр)
Насколько я понял вы хотите предусмотреть случай когда пароль перебирается и как-то ограничить это действие, то можно собирать ip таких пользователей и при n-ой попытке блокировать пользователя.
можно заслать cookie, со сроком действия на определённое кол-во времени.
или установить cookie равное нулю и при каждой ошибке увеличивать cookie.
Если кто-то хочет побаловаться, это точно должно остановить :)
Цитата: Craz-z-zy
Насколько я понял вы хотите предусмотреть случай когда пароль перебирается и как-то ограничить это действие, то можно собирать ip таких пользователей и при n-ой попытке блокировать пользователя.
можно заслать cookie, со сроком действия на определённое кол-во времени.
или установить cookie равное нулю и при каждой ошибке увеличивать cookie.
можно заслать cookie, со сроком действия на определённое кол-во времени.
или установить cookie равное нулю и при каждой ошибке увеличивать cookie.
Или просто поставить капчу.
- контроль количества неудачных попыток ввода пароля, блокировка на какое то время возможности ввода пароля, подсовывание вопроса "что изображено на картинке?", логирование большого числа неудачных проб с последующим сообщением админу, бан айпишника
- введение задержки между попытками ввода
- длинна пароля, чем больше тем выше зашита
Поскольку вы не веб-программист, то просто скажу вам - вы правы лишь отчасти.
Цитата:
Или просто поставить капчу.
Согласен, но лишь отчасти.
Капча против ботов помогает, а если там человек подбирает и не поленится код ввести.
Увидел чувак чей-то пароль, но полностью не запомнил ??? Всякое же бывает.
vol-jin, уточните пожалуйста, защита нужна от ботов или от человека???
Максимум можно добавить счетчик неудачных попыток для каждого IP адреса. Но могу сказать, что в подавляющем числе случаев это не нужно.
Кстати насчёт IP, можно же через проксю и твой IP уже не твой IP :)
Цитата: Craz-z-zy
Кстати насчёт IP, можно же через проксю и твой IP уже не твой IP :)
И? Вы думаете, что кто-то здесь не знает про прокси? А еще есть Tor например. В любом случае 100% защиты не существует. Есть лишь способы затруднить задачу для атакущего. Тем более, что в большинстве случаев используется не тупой брутфорс, а социальный инжиниринг и трояны (а иногда и пресловутый терморектальный криптоанализ).
Согласен лучшей защиты нет. Зато мы с вами рассмотрели возможные способы как притормозить этот процесс, а тех кто это плохо знает вообще затормозит.
Цитата: RussianSpy
вручную... 60-80 в час.
Один пароль в минуту? о_О
Если пользователь поставил ненадёжный пароль или дал его увидеть кому то другому, то это уже его проблема.