PDA

Просмотр полной версии : Защита формы логина — как делаю я


Vitak-01
16.07.2026, 04:20
Короче, поставил себе задачу не допускать простых дырок в форме авторизации. Просто открыть форму с логином и паролем – полдела, дальше надо надежно закрыть заднюю дверь.

Первое, что всегда проверяю — обязательный HTTPS. Без него даже самый крутой пароль передается в чистом виде и ловится на раз. Если на сервере ещё нет нормального сертификата — это прямо красный флаг.

Дальше смотрю на защиту от перебора. Лимиты на попытки входа — базовая вещь, бан IP на час-два после 5-10 неудачных попыток обычно работает. Кто-то вешает капчу, но мне этот вариант кажется раздражающим для честных пользователей.

Самая частая прокладка — ещё и защита от CSRF с токенами. Без них форму легко слать посторонние скрипты. Проверял, что токен обновляется для каждой сессии и случайный.

Ну и по паролям — не храню их в базе просто так, всегда хеш с современной солью, ну и если движок старый — меняю метод хранения сразу. Gost, bcrypt или Argon2 — стоит выбирать, чтобы не выбрать устаревший md5/smd5.

Много нюансов с самими ошибками — не стоит показывать, что сломался именно пароль или логин, лучше одно общее сообщение "Неверные данные". Это сбивает с толку атакующих.

Как у вас с практикой обхода таких защит? Кто-то заморачивался с мультифактором или дополнительными капчами?

Artem202
22.07.2026, 07:50
Все правильно подметил, особенно про общий ответ на ошибки — реально сбивает с толку. Капчи раздражают, но иногда без них совсем никак, если боты жёстко лезут. По паролям — Argon2 сейчас реально топ, и не жалко крутить его, если нет критичных ограничений по серверу. Только учти, что лимиты на попытки лучше делать не только по IP, а ещё по учётке и устройствам, чтобы не словить ложный блок.