Board logo

标题: Cookie 会话中 PHPSESSID 缺少 HTTPOnly、Secure 属性设置方法 [打印本页]

作者: fangzhen    时间: 2021-1-8 16:06     标题: Cookie 会话中 PHPSESSID 缺少 HTTPOnly、Secure 属性设置方法

由于优势网使用 PHP 开发的,并且也接入了独立的用户系统,所以站点本身就会存在会话 Cookie,而有时候也会用到 Session 模式的 cookie,由于默认使用 session_start()函数就可以直接开启,有时候就像在开发的时候偷个懒,所以就导致了目前问题的存在,因为其是使用 session 只是作为临时的检查判断,并不会包含任何相关性数据或者加密信息,完全是不存在任何的安全问题和可能。

当然不排除某些程序或应用也会没有考虑到这些层面,在使用 session 模式的情况下也将敏感信息包含在 cookie,所以这样就会存在漏洞,也就可能会造成被一些脚本或者恶意注入,甚至被恶意获取相关用户信息,所以网站的安全性是不容忽视的,及时属于低危问题,也应该做到良好的避免。

session_start();

$params = session_get_cookie_params();

setcookie("PHPSESSID", session_id(), 0, $params["path"], $params["domain"],

    true,  // secure 属性,默认 false.

    true  // httpOnly 属性,默认 false

);


如果你之前直接使用 session_start()函数就开启了 session,然后直接就使用$_SESSION['fanly']就开始操作使用了,那么你如果程序只针对 web 端,并且使用了 https 安全协议,那么你就可以放心大胆的使用以上子凡提供的示例代码,如果没有启用 https 记得 secure 就不要开启啦,参数为 false 即可。

当然如果你是直接使用 setcookie 设置的,那么在字段属性中记得开启即可,只要你知道 setcookie 的使用就可以搞定。






欢迎光临 PHP开发笔记 (http://phpvi.com/) Powered by Discuz! 6.1.0