Является ли регенерация идентификатора сеанса после входа в систему хорошей практикой?
Мне интересно, действительно ли регенерация идентификатора сеанса после успешного входа в систему является хорошей практикой, а не просто своего рода культом карго.
Если я правильно понимаю теорию, это должно предотвратить захват сеанса (или, по крайней мере, сделать его сложнее), но я действительно не вижу, что если кто-то может украсть сеанс перед входом в систему, что помешает Фишеру сделать это снова с регенерированным.
Я не фокусируюсь на Spring (я даже не использую Java в настоящее время), меня интересует плюсы и минусы.
2 ответа:
Вы регенерируете, чтобы предотвратить перехват сеанса, когда до входа в систему используется http, а после входа-https. Это то, что останавливает атакующего делать это снова с регенерированным.
Относительно легко украсть идентификатор сеанса для сеанса http, предполагая, что вы находитесь рядом с жертвой, или где - то в пути, или у вас есть фишинг и т. д.-И если этот идентификатор сеанса также жизнеспособен в зашифрованном сеансе, это может сделать работу злоумышленника довольно легкой.
Да. Вы должны регенерировать сеанс при входе в систему, чтобы помочь защититься от фиксации сеанса и входа CSRF.
Смотритерекомендацию OWASP для получения дополнительной информации.