Я делаю логин script, который хотел бы быть как можно более безопасным. Проблема в том, что безопасность кажется бесконечной битвой. По сути, я ищу предложения и улучшения в своих идеях.
У меня есть логин, основанный исключительно на сеансах. Каждый раз, когда изменяется информация о сеансе, session_regenerate_id()
вызывается, чтобы избежать очевидных попыток угона.
Когда сеанс не установлен, я проверяю cookie для действительного входа в систему и при успешном завершении сеанса обновления.
Я пытаюсь защитить файл cookie, добавив хеш-значение вместе с частью уникальной информации пользователя (например, имя пользователя или идентификатор). Этот хеш состоит из различной информации, включая имя пользователя/идентификатор, неразрешимый хэш пароля, часть IP-адреса и т.д. Извлекая имя пользователя /id из файла cookie, я могу сделать новый хэш из действительной информации пользователя и сравнить это с хешем в cookie. Мои надежды здесь состоят в том, чтобы предотвратить подделку куки файлов и захват файлов cookie (если они также не обманывают IP-адрес).
EDIT Предположим, что сам вход будет выполнен через HTTPS/SSL, поэтому передача (разумно) безопасна.
Я на правильном пути? Что еще можно сделать, чтобы защитить мой логин?
Спасибо за помощь!