GitHub Advisoryadvisory · Maven
GHSA-m6cp-vxjx-65j6 SessionListener can prevent a session from being invalidated breaking logout
LOW
Official page ↗
- Aliases
- CVE-2021-34428
- Ecosystem
- Maven
- Packages
- org.eclipse.jetty:jetty-server
- Severity
- Low
- CVSS vector
- CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
- Weaknesses
- CWE-613
- Reviewed
- 2021-06-22
Affected packages
• Maven org.eclipse.jetty:jetty-server: < 9.4.41 → fixed in 9.4.41
• Maven org.eclipse.jetty:jetty-server: >= 10.0.0, < 10.0.3 → fixed in 10.0.3
• Maven org.eclipse.jetty:jetty-server: >= 11.0.0, < 11.0.3 → fixed in 11.0.3
Description
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.
Related
Weakness · not in database (1)
Alias · CVE (1)
- CVE-2021-34428 For Eclipse Jetty versions <= 9.4.40, <= 10.0.2, <= 11.0.2, if an exception is thrown from the SessionListener#sessionDestroyed() method,… vulnerability
References
- https://github.com/eclipse/jetty.project/security/advisories/GHSA-m6cp-vxjx-65j6 web
- https://nvd.nist.gov/vuln/detail/CVE-2021-34428 advisory
- https://github.com/eclipse/jetty.project web
- https://lists.apache.org/thread.html/r67c4f90658fde875521c949448c54c98517beecdc7f618f902c620ec@%3Cissues.zookeeper.apache.org%3E web
- https://lists.apache.org/thread.html/r8a1a332899a1f92c8118b0895b144b27a78e3f25b9d58a34dd5eb084@%3Cnotifications.zookeeper.apache.org%3E web
- https://lists.apache.org/thread.html/rbefa055282d52d6b58d29a79fbb0be65ab0a38d25f00bd29eaf5e6fd@%3Cnotifications.zookeeper.apache.org%3E web
- https://lists.apache.org/thread.html/rddbb4f8d5db23265bb63d14ef4b3723b438abc1589f877db11d35450@%3Cissues.zookeeper.apache.org%3E web
- https://lists.apache.org/thread.html/ref1c161a1621504e673f9197b49e6efe5a33ce3f0e6d8f1f804fc695@%3Cjira.kafka.apache.org%3E web
- https://lists.apache.org/thread.html/rf36f1114e84a3379b20587063686148e2d5a39abc0b8a66ff2a9087a@%3Cissues.zookeeper.apache.org%3E web
- https://security.netapp.com/advisory/ntap-20210813-0003 web
- https://www.debian.org/security/2021/dsa-4949 web
- https://www.oracle.com/security-alerts/cpuapr2022.html web
- https://www.oracle.com/security-alerts/cpujan2022.html web
- https://www.oracle.com/security-alerts/cpuoct2021.html web