gpt4 book ai didi

php - 如何将 php session 绑定(bind)到用户 SSL 证书

转载 作者:太空宇宙 更新时间:2023-11-03 13:43:34 24 4
gpt4 key购买 nike

我在 php 手册中阅读了一篇关于 session 漏洞的论文。我了解到我需要将我的 session 绑定(bind)到用户 SSL 证书,并在每个页面上进行验证。我不太明白这是什么意思。

我的站点在每个页面上都有 SSL,从来没有任何开关,用户永远无法在没有 https 的情况下访问它。

我是否需要在我的代码中采取措施来保护我的 session ?

最佳答案

我建议将 session cookie 仅限于 HTTPS 页面,即使您不切换到非安全页面也是如此。这可以在使用 session_set_cookie_params() 调用 session_start() 函数之前完成,将参数 $secure 设置为 true。没听说需要验证cookie,应该加密传输cookie。

session_set_cookie_params(0, '/', '', true, true);
session_start();

为防止 session 固定,您应该仅使用 cookie 而不是在 URL 中传输 session ID。请参阅 session.use_only_cookies 设置。为了安全,您可以在登录后重新生成 session ID:

登录.php:

session_set_cookie_params(0, '/', '', true, true);
session_start();
session_regenerate_id(true);

这会生成一个具有不同 session ID 的新 cookie,但会保留 session 的内容。

关于php - 如何将 php session 绑定(bind)到用户 SSL 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5975147/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com