Loading HuntDB...

GHSA-m6cp-vxjx-65j6

GitHub Security Advisory

SessionListener can prevent a session from being invalidated breaking logout

✓ GitHub Reviewed LOW Has CVE

Advisory Details

### Impact
If an exception is thrown from the `SessionListener#sessionDestroyed()` method, then the session ID is not invalidated in the session ID manager. On deployments with clustered sessions and multiple contexts this can result in a session not being invalidated. This can result in an application used on a shared computer being left logged in.

There is no known path for an attacker to induce such an exception to be thrown, thus they must rely on an application to throw such an exception. The OP has also identified that during the call to `sessionDestroyed`, the `getLastAccessedTime()` throws an `IllegalStateException`, which potentially contrary to the servlet spec, so applications calling this method may always throw and fail to log out. If such an application was only tested on a non clustered test environment, then it may be deployed on a clustered environment with multiple contexts and fail to log out.

### Workarounds
The application should catch all Throwables within their `SessionListener#sessionDestroyed()` implementations.

Affected Packages

Maven org.eclipse.jetty:jetty-server
Affected versions: 0 (fixed in 9.4.41)
Maven org.eclipse.jetty:jetty-server
Affected versions: 10.0.0 (fixed in 10.0.3)
Maven org.eclipse.jetty:jetty-server
Affected versions: 11.0.0 (fixed in 11.0.3)

Related CVEs

Key Information

GHSA ID
GHSA-m6cp-vxjx-65j6
Published
June 23, 2021 8:23 PM
Last Modified
February 8, 2022 9:21 PM
CVSS Score
2.5 /10
Primary Ecosystem
Maven
Primary Package
org.eclipse.jetty:jetty-server
GitHub Reviewed
✓ Yes

Dataset

Last updated: November 25, 2025 6:29 AM

Data from GitHub Advisory Database. This information is provided for research and educational purposes.