CVE-2026-43827
Apache Shiro vulnerability analysis and mitigation

Overview

CVE-2026-43827 is a session fixation vulnerability (CWE-384) in Apache Shiro's default configuration, where existing sessions are not invalidated upon successful login and no new session ID is generated post-authentication. It affects Apache Shiro versions 1.0 through 2.1.0 and 3.0.0-alpha-1 (including 3.0.0-alpha-0). The vulnerability was disclosed on May 25, 2026, by Rasmus Moorats (finder) and remediated by Lenny Primak. It carries a CVSS v3.1 score of 6.5 (Medium) and a CVSS v4.0 score of 5.9 (Medium) (GitHub Advisory, OSS-Security).

Technical details

The root cause is classified as CWE-384 (Session Fixation): Apache Shiro's default session management does not invalidate an existing session or regenerate the session ID upon successful user authentication. An attacker can exploit this by first obtaining a valid (pre-authentication) session token — for example, by visiting the application — and then tricking a victim into authenticating while that session token is active. Because Shiro does not replace the session ID at login, the attacker's pre-seeded session token becomes a fully authenticated session. Exploitation requires user interaction (the victim must log in) and the presence of an existing session, but no privileges are required on the attacker's part (OSS-Security, GitHub Advisory).

Impact

Successful exploitation allows an unauthenticated attacker to hijack an authenticated user's session, effectively impersonating that user and gaining access to all resources and data the victim is authorized to access. The primary impact is a high confidentiality loss — the attacker can read sensitive application data and perform actions on behalf of the victim. Integrity and availability of the vulnerable system are not directly impacted by this vulnerability (GitHub Advisory, OSS-Security).

Exploitation steps

  1. Reconnaissance: Identify a target application using Apache Shiro versions 1.0–2.1.0 or 3.0.0-alpha-1 for session management (e.g., via HTTP response headers such as JSESSIONID or Shiro-specific cookies, or by reviewing application dependencies).
  2. Obtain a pre-authentication session: Visit the target application without logging in to receive a valid session cookie (e.g., JSESSIONID=<attacker_session_id>) from the server.
  3. Deliver the session token to the victim: Use a social engineering technique (e.g., a crafted link embedding the session cookie, or a shared network/browser context) to cause the victim's browser to send the attacker's session ID when accessing the login page.
  4. Wait for victim authentication: The victim logs in using the attacker-controlled session ID. Because Shiro does not invalidate the session or generate a new ID upon login, the session is now authenticated.
  5. Hijack the session: The attacker uses the same session token (already in their possession) to make authenticated requests to the application, gaining full access to the victim's account and authorized resources (OSS-Security, GitHub Advisory).

Indicators of compromise

  • Network: Requests to authenticated application endpoints using a session ID that was first observed in pre-authentication traffic (same session token appearing before and after a login event).
  • Logs: Application access logs showing the same session identifier (JSESSIONID or Shiro session cookie) used both before and after a successful login event, without a session rotation entry.
  • Logs: Multiple authenticated requests from geographically or temporally disparate IP addresses sharing the same session ID, suggesting concurrent session use by different parties.
  • Application Behavior: Absence of session invalidation or new session creation events in Shiro audit/debug logs immediately following a successful authentication.

Mitigation and workarounds

Users should upgrade Apache Shiro to version 2.1.1 or 3.0.0-alpha-2 (or later), which fix the issue by invalidating existing sessions and generating new session IDs upon successful login. As a configuration-based workaround prior to patching, administrators can implement custom SessionManager or authentication listener logic to explicitly invalidate and recreate sessions on login. Reviewing and enforcing secure session management practices — such as always regenerating session IDs post-authentication — is recommended as a defense-in-depth measure (OSS-Security, Apache Shiro Security Reports).

Community reactions

The vulnerability was disclosed via the Apache security mailing list and the OSS-Security list on May 25, 2026, with credit given to finder Rasmus Moorats and remediation developer Lenny Primak (OSS-Security). Community discussion was noted on Bluesky (infosec.skyfleet.blue) shortly after disclosure. Overall community sentiment appears measured, given the moderate CVSS score, the requirement for user interaction, and the absence of a public PoC or active exploitation.

Additional resources


SourceThis report was generated using AI

Related Apache Shiro vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-49268HIGH8.8
  • Apache Shiro logoApache Shiro
  • org.apache.shiro:shiro-core
NoYesJun 17, 2026
CVE-2023-46749MEDIUM6.5
  • Apache Shiro logoApache Shiro
  • shiro
NoYesJan 15, 2024
CVE-2026-43827MEDIUM5.9
  • Apache Shiro logoApache Shiro
  • apache-activemq-6.2
NoYesMay 25, 2026
CVE-2026-23903MEDIUM5.3
  • Java logoJava
  • org.apache.shiro:shiro-core
NoYesFeb 09, 2026
CVE-2026-23901LOW1
  • Apache Shiro logoApache Shiro
  • shiro
NoYesFeb 10, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management