Tomcat 7 sessionid cookie禁用http-only和secure

JEE*_*Dev 27 cookies httponly session-cookies tomcat7 cookie-httponly

我有一个在Tomcat 7服务器上运行的Web应用程序.具有会话ID的cookie默认具有标志HttpOnlySecure.我想禁用JSESSIONIDcookie的这个标志.但它不会工作.我在我的web.xml文件中更改了这个,但它无法正常工作.

<session-config>
    <session-timeout>20160</session-timeout>
    <cookie-config>
        <http-only>false</http-only>
        <secure>false</secure>
    </cookie-config>
</session-config>
Run Code Online (Sandbox Code Playgroud)

我知道这是一个安全风险,因为攻击者能够窃取cookie并劫持会话,如果他找到了xss vuln.

JSESSIONID饼干应与HTTP和HTTPS与AJAX请求被发送.

编辑:

HttpOnly通过在conf/context.xml文件中添加以下选项成功禁用了该标志:

<Context useHttpOnly="false">
....
</Context>
Run Code Online (Sandbox Code Playgroud)

Geo*_*ell 2

我没有在 Tomcat 中找到解决方案,但如果您使用 apache 作为反向代理,您可以这样做:

Header edit* Set-Cookie "(JSESSIONID=.*)(; Secure)" "$1"
Run Code Online (Sandbox Code Playgroud)

它将mod_headers在返回时修改标头以删除安全标志。不太漂亮,但如果这很关键的话就可以了。