JBoss EAP 6 - 如何更改java sessionid长度

问题描述 投票:0回答:2

安全测试团队已经要求我们将sessionid长度增加到50个字符。

https://www.owasp.org/index.php/Insufficient_Session-ID_Length

如何在jboss应用程序服务器EAP 6中更改它。

java security jboss6.x sessionid jsessionid
2个回答
0
投票

我在另一个论坛找到了这个问题的答案。实际上JBoss没有提供任何超越sesionid长度的方法。 org.jboss.web.tomcat.service.session.SessionIDGenerator类不提供任何修改sessionid长度的公共方法。并且没有已知的方法来向jboss提供自定义SessionIDGenerator。

现在这里是出路,您可以通过在jboss配置中添加系统属性“jvmRoute”来增加sessionid的长度。这为sessionid增加了额外的价值。

对于Jboss EAP 6独立环境,编辑jboss-eap-6.2 / standalone / configuration / standalone.xml以添加以下系统属性:

    <system-properties>
       <property name="jvmRoute" value="qU2O2h8yQ1cxI9XsPK0aHlr3p"/>
    </system-properties>

0
投票

JBoss EAP 6.4.8中添加了一个系统属性,用于调整会话ID的长度。新的系统属性称为org.apache.catalina.session.ManagerBase.SESSION_ID_LENGTH

基于新系统属性设置会话ID长度的行为是非直观的,因此您必须使用公式来确定将org.apache.catalina.session.ManagerBase.SESSION_ID_LENGTH设置为:

((Desired-Session-ID-Length / 4) * 3) - 2

例如,如果您希望会话ID长度为40:

((40 / 4) * 3) -2 = 28

你会设置org.apache.catalina.session.ManagerBase.SESSION_ID_LENGTH=28

注意:此解决方案适用于JBoss EAP 6.4.8及更高版本

你可以在这里了解更多:https://access.redhat.com/solutions/454893

© www.soinside.com 2019 - 2024. All rights reserved.