Kan*_*iya 4 php cookies session
您好,我知道会话位于服务器端,当用户登录到站点时,我们会创建一个会话并在该会话中存储用户数据,并且该会话 ID 是唯一的。如果多个用户登录到同一服务器,则创建具有唯一会话 ID\xe2\x80\x99s 的会话。
\n\ncookie是服务器嵌入到用户计算机上的一个小文件。每次同一台计算机使用浏览器请求页面时。
\n\n\n\n\n在浏览器 cookie 中,我看到了名为 \n 的变量,
\nSID这些SSID变量是指服务器会话 ID ???
或者
\n\n\n\n\n根据 cookie 的哪些参数,会话可以识别出这是正确的用户。
\n
**当我向服务器发送请求时
\n\ncookie 中的那些 id 与服务器会话 id 匹配吗?
\n\n\n\n\n我的问题是服务器如何知道这是正确的用户?
\n
我有会话和cookie的想法,但它们的组合尚不清楚。
\n\n其实我已经搜索了很长时间了,我问了我的朋友,他们似乎也对此没有清楚的了解
\n\n请解释一下场景,提前致谢。
\n这就是重点,服务器无法知道这一点。
更详细:
服务器生成一个唯一的 id,然后将此 id 发送到客户端,客户端将此 id 存储在他的 cookie 中,对于客户端发送他的 id 的每个请求,服务器知道他必须为该用户采取哪个会话,但问题是也就是说,如果其他人因为正在侦听网络流量而知道该 id,则他可以使用会话 id,并且服务器会认为这是与以前相同的客户端,并且他将采用与以前相同的会话。这称为会话劫持
为了防止这种情况,您必须存储每个会话密钥的 IP 地址,并检查它们是否匹配,但如果发生这种情况,就不能100% 确定,因为如果客户端位于NAT 安全网络中,并且攻击者也位于同一网络中,那么它们就会“服务器的IP地址相同,服务器无法区分攻击者和客户端。