Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
这些问题是相关的:一和二,前者说它是用来防止同域内的应用程序之间的名称冲突。后者表示它可以用于反会话劫持。
虽然前者似乎是 的真正目的session_name(),但我不确定后者。它真的可以防止会话劫持吗?我认为它可能会使攻击者在找出 cookie 名称而不是默认名称方面感到困惑,PHPSESSID但仅此而已吗?
session_name()
PHPSESSID
的真正目的是session_name()什么?
我碰巧在同一个域上有两个(或更多)不同的应用程序。
允许不同的会话在同一个域中共存是 session_name() 的真正范围,恕我直言。
它真的可以防止会话劫持吗?
不。攻击者访问您的站点并查看您使用的会话名称而不是默认名称(只需查看标题)是微不足道的,因此此功能实际上并没有提供任何会话劫持保护。其目的是允许您将默认 PHPSESSID 更改为其他内容,或避免同一域上的应用程序之间发生冲突。