会话重建的好处?

bla*_*now 1 php

我目前正在使用会话来处理用户数据,例如:

  • 用户名
  • 密码
  • 名称
  • 允许

我想知道的是,如果数据在发送到会话之前被加密,那么重新生成是没有意义的吗?我目前已经设置从TMP中删除旧会话并创建一个新会话.

有人可以解释它对我有什么好处,我发现他们喜欢的文档使功能看起来如此重要,非常有帮助!:)

Ple*_*and 5

session_regenerate_id()实际上并没有阻止会话固定.然而,它应该叫,起码,当用户登录到防止(以下简称"通用"会话固定攻击1,2)从工作.

  1. 攻击者PHPSESSID=在他发送给用户的URL中包含一个参数,将浏览器的会话ID设置("固定")为已知值.或者他可以从您的其他子域中设置会话cookie(例如,通过上传带有嵌入式JavaScript的HTML文件).
  2. 他等待用户在该会话下登录.
  3. 他使用已知的会话ID来劫持用户的帐户.

调用session_regenerate_id()阻止步骤3成功,因为攻击者将不再知道该点的会话ID.

同时,由于子域可以设置父域(其被发送到其它子域以及)饼干,建议您主机上的完全独立的域名的任何不受信任的内容在一个公知的TLD.com,.net,或.org.浏览器包含黑名单(例如公共后缀列表),用于阻止为这些TLD设置cookie.

例如,内容exampleusercontent.com无法设置将要发送到的cookie example.com.