cookie 和 session 学习中的一点想法

本文探讨了PHP中Session机制的安全性问题,特别是会话固定攻击的原理及防御措施。介绍了攻击者如何利用PHPSESSID进行伪装,以及通过重新生成SessionID和增加额外验证方式来增强安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

php 中的sessionID 有放在 cookie 的 PHPSESSID 中的

服务端只认 PHPSESSID 的话,那么只要通过某种方式获取到了某一个合法的 PHPSESSID
攻击者就可以通过这个 PHPSESSID 伪装成合法用户,请求服务器,造成安全问题

在体验 cookie 和 session 保存数据的时候
发现 php 的 session 认证机制,是 cookies 中,如果有 PHPSESSID ,而其值不存在
那么,会重新创建一个 session
这时候,如果攻击者通过某种方式,让受害者以攻击者设置的 PHPSESSID 向服务器发起请求
那么受害者的 session 的数据就会存在这个 PHPSESSID 指向的 session 中
这样攻击者也可以通过这个 id 访问受害者的 session 的数据

然后查了文章后,发现这似乎就是会话固定攻击方式
这种方式的解决办法,通常是,在用户登录之后,就重新生成一个 sessionID
这样可以避免攻击者使用他的 PHPSESSID 伪装受害者访问服务器

还有的方法是,在服务端添加验证方式
不单单使用 sessionID 来验证

如,使用请求头中的部分信息和自定义的字段等组合,再加密,然后信息对比等等
具体方式应该有很多

只是总结下今天学习 cookie 和 session 机制的想法

参考资料:
https://www.freebuf.com/articles/web/10369.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值