- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Делаю авторизацию для своего скрипта, как лучше сделать запрос каптчи?
Хочу сделать так: 2 раза неверно введен пароль, на 3-й раз появляется каптча. Счетчик попыток в сессию записать, или в базу данных? или без разницы?
Какой метод будет устойчивым от ботов?
а что часто брутят?
ну только еще разрабатываю, хотел изначально защитится от таких примитивных хотя бы брутов.
записывать надо ip. А лучше не изобретат велосипеды, а пользоваться фреймворками
А фреймворк - это не изобретенный велосипед ? :)
записывать надо ip. А лучше не изобретат велосипеды, а пользоваться фреймворками
Какой IP? Куда? А если у вас на сайте открыто 100 соединений с одним и тем же IP?
Изобретайте велосипеды. В какждом велосипеде можно улучшить раму, подобрав лучший сплав, улучшить руль под ваши нужны, сидушку можно пошить из особой ткани и т.д. По сей день велосипеды улучшаются и успешно продаются. В этом случае, ТС-у, конечно, не плохо было бы воспользоваться готовыми решениями, но я считаю, что если человек делает самостоятельно, то он больше понимает механизмы.
ТС, по теме, если ваш юзер переключится с бразера на браузер, сессия разорвется любая. Я бы использовал сохранение в БД IP + HTTP_X_FORWARDED_FOR.
Я бы использовал сохранение в БД IP + HTTP_X_FORWARDED_FOR.
А можно поподробнее? где можно увидеть похожий пример реализации?
Просто если записывать только IP, ведь может быть нормальный пользователь с данного IP и бот который брутит вас.
Не плохой вариант. Делайте так:
Пишите количество запросов к юзеру в БД (как вы понимаете, сессии подменить можно);
После x неверных попыток ввода - выводите капчу и дайте пользователю ещё y попыток (то есть, например, 2 попытки без капчи и 8 с капчей). Потом бан на z минут/часов/дней.
Ну и, конечно, отдельно пишите IP в лог. Если с 1 ip неправильно указан пароль к 2 (например) аккаунтам - в бан на z минут/часов/дней.
leprekon, а как быть с 2-мя пользователями с 1 IP? получается 1-го будут всё время блокировать зря?
а как быть с 2-мя пользователями с 1 IP? получается 1-го будут всё время блокировать зря?
Мало вероятно, что оба пользователя с одного ip будут одновременно логиниться. Поэтому, если юзер успешно залогинился, ему выдается сессия, бан по ip должен учитывать сессию, или по другому - бан должен быть только на странице авторизации.
Мало вероятно, что оба пользователя с одного ip будут одновременно логиниться. Поэтому, если юзер успешно залогинился, ему выдается сессия, бан по ip должен учитывать сессию, или по другому - бан должен быть только на странице авторизации.
Ну мало вероятно, это самый легкий вариант....
Может кто-то предложит что-то более разумное?