cookie中保存session id是什么概念?

What is the concept of saving session id in cookie?

我正在为企业开发安全网站。我希望它完全免受所有已知漏洞的影响。我遇到过创建安全 cookie 和启用 HTTPOnly 但在那个例子中他们使用 cookie 值作为会话 ID。我不明白。使用这种方式不会构成威胁吗?

您需要将会话 ID 发送到客户端并返回到服务器,以便将来自该客户端的请求与会话匹配。

据我所知,只有两种方法可以传递会话 ID:作为 cookie 或作为参数(在大多数情况下,应该是 url 参数来支持获取请求)。通过参数发送会话 ID 是一个漏洞,因为攻击者可以为 link 提供预先制作的会话 ID(会话固定),而对 cookie 做同样的事情至少很难(如果不是不可能的话)。

通过 url 参数发送会话 ID 不仅是一个安全问题。假设有人复制 url 并将其发送给某人 ("hey look at this") 或将其张贴在网络上的某处。只要会话存在,访问 link 的每个人都会使用相同的会话并相互干扰。诚然,无论会话(ip、mac 地址等)如何,都有一些方法可以识别用户,但这些措施通常不可行或施加其他限制(例如,您将如何处理漫游移动用户?)。