首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache似乎导致会话固定。

Apache似乎导致会话固定。
EN

Stack Overflow用户
提问于 2016-04-18 16:14:00
回答 2查看 770关注 0票数 1

我使用Apache对web会话进行集群,并使用Spring安全性进行基于表单的身份验证。我使用的软件是:

  • JDK 1.8.0_60
  • Apache Tomcat 7.0.68
  • Apache 1.5.0
  • 春季安全3.1.3

(没有Apache,基于表单的身份验证可以正常工作,JSESSIONID cookie在身份验证成功后就会被更改,以防止会话固定攻击,正如预期的那样。)

使用Apache,我无法登录,并收到以下警告:

代码语言:javascript
复制
2016-04-18 16:49:07,283 WARN  org.springframework.security.web.authentication.session.SessionFixationProtectionStrategy/onAuthentication 102 - Your servlet container did not change the session ID when a new session was created. You will not be adequately protected against session-fixation attacks

如果我在Spring配置中关闭会话固定保护,如下所示:

代码语言:javascript
复制
<http>
    ...
    <session-management session-fixation-protection="none" />
    ...
</http>

它起作用了。(因此,JSESSIONID在身份验证成功后不会改变。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-19 11:56:34

按照Valentin的建议(谢谢),我尝试了Apache的夜间建筑,版本1.6.0-快照#20160419-SHA1:186c8604。事实上,这是可行的。

它适用于以下Spring安全配置:

代码语言:javascript
复制
<http>
    ...
    <session-management session-fixation-protection="none" />
    ...
</http>

当然,在Spring安全身份验证成功后,JSESSIONID不会改变。

然后我注释掉以下配置:

代码语言:javascript
复制
<session-management session-fixation-protection="none" />

这也很管用。认证成功后,JSESSIONID就会按预期的方式进行更改。

好的,我现在将使用Ignite版本1.5.0.final (没有会话固定保护),并等待版本1.6.x的发布。

票数 1
EN

Stack Overflow用户

发布于 2016-04-19 00:32:04

Tomcat 7有内置的会话固定功能,

  • 更改身份验证上的jsessionid以防止会话固定攻击。

Tomcat不允许应用程序更改会话ID。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36699223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档