[ 
https://issues.apache.org/jira/browse/WW-5841?focusedWorklogId=1053203&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-1053203
 ]

ASF GitHub Bot logged work on WW-5841:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 07/Nov/26 09:35
            Start Date: 07/Nov/26 09:35
    Worklog Time Spent: 10m 
      Work Description: g0w6y opened a new pull request, #2117:
URL: https://github.com/apache/struts/pull/2117

   Fixes [WW-5841](https://issues.apache.org/jira/browse/WW-5841)
   
   Without a `web.xml`, the embedded Tomcat context `StrutsBootServer` starts 
defaulted to the servlet-spec COOKIE+URL session tracking modes, so a session 
id supplied only via `;jsessionid=` in the URL (no cookie at all) was accepted 
and kept alive with no fresh `Set-Cookie`. Live-reproduced before this fix: a 
session established by cookie was resumed by replaying the id via the URL 
parameter with no Cookie header sent at all.
   
   Restricts session tracking to COOKIE only, and the session cookie now 
carries `SameSite=Lax`. Boot is part of 7.5.0, unreleased, so this lands before 
anyone is exposed to it.
   
   **Verified:** `StrutsBootTomcatTest` gains `testSessionCookieHasSameSiteLax` 
and a URL-supplied-session-id test, with a cookie-based-session control. Full 
`boot`: 52/0 failures.




Issue Time Tracking
-------------------

            Worklog Id:     (was: 1053203)
    Remaining Estimate: 0h
            Time Spent: 10m

> Struts Boot accepts a session id via URL ;jsessionid= with no cookie and no 
> SameSite
> ------------------------------------------------------------------------------------
>
>                 Key: WW-5841
>                 URL: https://issues.apache.org/jira/browse/WW-5841
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Gouri Sankar A
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Without a web.xml, the embedded Tomcat context StrutsBootServer starts 
> defaulted to the servlet-spec COOKIE+URL session tracking modes, so a session 
> id supplied only via ";jsessionid=" in the URL (no cookie at all) was 
> accepted and kept alive with no fresh Set-Cookie -- a session-fixation vector.
> Live-reproduced before this fix: a session established by cookie was resumed 
> by replaying the id via the URL parameter with no Cookie header sent at all.
> Fix restricts session tracking to COOKIE only, and the session cookie now 
> carries SameSite=Lax (previously unset). Secure is deliberately not forced: 
> Boot opens a plain HTTP listener by default, and an operator terminating TLS 
> in front of it sets Secure themselves, as with any other servlet container.
> Boot is part of 7.5.0 (unreleased, no production deployments yet), so this 
> lands before anyone is exposed to it.
> Tests: StrutsBootTomcatTest gains testSessionCookieHasSameSiteLax and a 
> URL-supplied-session-id-is-not-honoured test, with a 
> cookie-based-session-still-works control. Full boot suite: 52/0 failures.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to