sessionid固定与session混淆的一些随想

Posted jinqi520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sessionid固定与session混淆的一些随想相关的知识,希望对你有一定的参考价值。

以前一直觉得sessionid固定和session混淆就是两个一样的东西,后来发现两者还是要分开来的,主要因为利用场景的不同!!!

sessionid固定和session混淆还是需要区分开来的
一般情况下:sessionid固定原理是因为用户登陆后未创建创建新的会话,导致sessionid不变(大部分情况下是在表中加上一个判断用户是否登陆了的字段),sessionid固定多用于和crlf结合起来结合起来进行攻击,发送一个由crlf漏洞的链接,管理员点击后刷新sessionid或者是创建新的sessionid,当管理员再去登陆该网站时(由于该sessionid时无效的,所以大部分情况下会跳转到登陆页面,就算不跳转也没关系,等管理员什么时候自己去登陆就行),攻击者也能拿该sessionid进行登陆
session混淆原理其实就是sessionid固定的原因,当一个用户登陆之后,另一个用户使用同一浏览器再次登陆时,sessionid不变,但是却绑定了不同的用户,这种情况叫session混淆。目前我知道的利用session混淆的场景:
当一个用户(攻击者的用户)登陆之后,由于某些原因可以将该sessionid和其他用户绑定起来(实际场景中没遇到)
再或者使用用户自己的账号进行一系列认证操作后,真正操作数据时将sessionid与受攻击者的账号绑定(最常见的场景就是找回密码的地方)





以上是关于sessionid固定与session混淆的一些随想的主要内容,如果未能解决你的问题,请参考以下文章

session攻击(会话劫持+固定)与防御

关于session的一些体会

Session.Abandon 调用后 SessionID 仍然相同

初识 session与cookie

概念端类型“Converter.Session”中成员“SessionId”的类型“Edm.Int32”与“系统”类型不匹配

php代码审计10审计会话认证漏洞