Spring Security---会话固定攻击防御

什么是会话固定攻击?

会话固定攻击英文叫做 session fixation attack,其攻击原理是利用sessionId的不变性。

假设攻击者登录www.xxx.com网站,此时会生成一个sessionId。攻击者利用某种手段欺骗受害者访问该网站,但是会在网站后拼接自己的sessionId。当受害者访问www.xxx.com并进行登录后,此时的sessionId还是攻击者登录后返回的sessionId,因为sessionId没有变化,当攻击者再次登录该网站后,此时系统发现sessionId没有发生变化,攻击者就拥有了受害者的身份了,就该做坏事了。

Spring Security配置防御会话固定攻击

在这里插入图片描述

  • changeSessionId:表示在登录成功之后,session 不变,但是会修改 sessionid,其实也相当于改变了session,因为这样攻击者的sessionid找不到对应的session了。
  • migrateSession: Spring Security的默认策略,表示在登录成功之后,会创建一个新的Session,把旧的Session中的数据复制过来。
  • newSession : 表示在登录成功之后,创建一个新的 session。
  • none: 表示不做任何事情,在登录成功之后,会继续使用旧的 session,这种情况是无法防御会话固定攻击

猜你喜欢

转载自blog.csdn.net/MAKEJAVAMAN/article/details/121052626