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

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

                Author: ASF GitHub Bot
            Created on: 08/Nov/26 03:30
            Start Date: 08/Nov/26 03:30
    Worklog Time Spent: 10m 
      Work Description: g0w6y commented on PR #2117:
URL: https://github.com/apache/struts/pull/2117#issuecomment-6716733480

   Addressed in bfc956e43:
   
   - `THREAT_MODEL.md` ยง5: added "session tracking is cookie-only" and "the 
session cookie carries `SameSite=Lax`" to the Boot container defaults list
   - dropped the `Secure` claim from the Javadoc; the remaining Javadoc is two 
lines
   - `setSessionTrackingModes` now lives in the same method as the cookie 
processor, renamed `restrictSessionTracking(Context)`; the registry initializer 
is back to its original one-liner
   - comments reduced to what the code does; test Javadocs are one line each 
and the `// GREEN:` lines are gone
   - PR title changed to the repo form
   
   I'll update the ticket text to drop the `Secure` sentence and add the 
`<s:url>`/`<s:a>` link effect. Full `boot` suite: 52/0 failures; both new tests 
fail against `main`'s `StrutsBootServer`.
   




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

    Worklog Id:     (was: 1053352)
    Time Spent: 0.5h  (was: 20m)

> 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
>             Fix For: 7.5.0
>
>          Time Spent: 0.5h
>  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