Сценарий: при запуске сеанса на моем сайте я генерирую токен rand, который отображается пользователю один раз. Скажите, что они «хранят» его для последующего использования. Затем я ВСТАВЛЯЮ md5 (токен) в SQL с отметкой времени. Когда пользователь посещает другие страницы, такие как вход в систему, он должен будет передать токен через URL-адрес как часть процесса проверки. Я бы проверил, существует ли токен, и, возможно, ОБНОВИЛ идентификатор пользователя для этого токена.
Так. Даже если кто-то украдет пользовательский файл cookie PHPSESSID, разве это не принесет хакеру никакой пользы, поскольку он не сможет получить доступ ни к одной из этих страниц, не зная токена?