CVE-2026-86688: CWE-384 Session Fixation in team-alembic ash_authentication
Session Fixation vulnerability in team-alembic ash_authentication allows an attacker who can plant a session identifier in a victim's browser to hold an authenticated session once that victim signs in. AshAuthentication.Plug.Helpers.store_in_session/2 writes the authenticated subject into the existing session with Plug.Conn.put_session/3 and never calls Plug.Conn.configure_session(renew: true), so the identifier the visitor arrived with carries into their authenticated session. Every authentication event reaches this one function: the default success/4 injected by AshAuthentication.Phoenix.Controller.__using__/1, the AuthController emitted by mix ash_authentication_phoenix.install, and remember-me auto-login. AshAuthentication.Phoenix.Plug.store_in_session/2 is a defdelegate to it. Logout does not close the window either, because clear_session/2 ends with Plug.Conn.clear_session/1, which clears session contents but leaves the identifier intact, so a planted identifier survives a logout-then-login cycle. This issue affects ash_authentication: from 0.2.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.
AI Analysis
Technical Summary
The vulnerability arises from the AshAuthentication.Plug.Helpers.store_in_session/2 function, which writes the authenticated subject into the existing session without renewing the session identifier via Plug.Conn.configure_session(renew: true). Consequently, the session ID that the visitor initially had remains active after authentication, enabling session fixation attacks. This affects all authentication flows that use this function, including default success handlers, AuthController, and remember-me auto-login. Additionally, the logout process clears session contents but does not renew or clear the session identifier, allowing a planted session ID to survive logout and subsequent login cycles. The affected versions are >=0.2.0 <4.15.0 and >=5.0.0-rc.0 <5.0.0-rc.14.
Potential Impact
An attacker capable of planting a session identifier in a victim's browser can hijack the victim's authenticated session after they log in, potentially gaining unauthorized access to the victim's account. The persistence of the session identifier across logout and login cycles exacerbates the risk by allowing session fixation even after the victim logs out.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, users should consider implementing manual session ID renewal upon authentication and ensure session identifiers are cleared or renewed on logout to mitigate session fixation risks.
CVE-2026-86688: CWE-384 Session Fixation in team-alembic ash_authentication
Description
Session Fixation vulnerability in team-alembic ash_authentication allows an attacker who can plant a session identifier in a victim's browser to hold an authenticated session once that victim signs in. AshAuthentication.Plug.Helpers.store_in_session/2 writes the authenticated subject into the existing session with Plug.Conn.put_session/3 and never calls Plug.Conn.configure_session(renew: true), so the identifier the visitor arrived with carries into their authenticated session. Every authentication event reaches this one function: the default success/4 injected by AshAuthentication.Phoenix.Controller.__using__/1, the AuthController emitted by mix ash_authentication_phoenix.install, and remember-me auto-login. AshAuthentication.Phoenix.Plug.store_in_session/2 is a defdelegate to it. Logout does not close the window either, because clear_session/2 ends with Plug.Conn.clear_session/1, which clears session contents but leaves the identifier intact, so a planted identifier survives a logout-then-login cycle. This issue affects ash_authentication: from 0.2.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.
CVSS v4.0
Score 7.4high
Affected software
team-alembic
ash_authentication
team-alembic
ash_authentication
pkg:hex/ash_authenticationpkg:github/team-alembic/ash_authenticationcpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability arises from the AshAuthentication.Plug.Helpers.store_in_session/2 function, which writes the authenticated subject into the existing session without renewing the session identifier via Plug.Conn.configure_session(renew: true). Consequently, the session ID that the visitor initially had remains active after authentication, enabling session fixation attacks. This affects all authentication flows that use this function, including default success handlers, AuthController, and remember-me auto-login. Additionally, the logout process clears session contents but does not renew or clear the session identifier, allowing a planted session ID to survive logout and subsequent login cycles. The affected versions are >=0.2.0 <4.15.0 and >=5.0.0-rc.0 <5.0.0-rc.14.
Potential Impact
An attacker capable of planting a session identifier in a victim's browser can hijack the victim's authenticated session after they log in, potentially gaining unauthorized access to the victim's account. The persistence of the session identifier across logout and login cycles exacerbates the risk by allowing session fixation even after the victim logs out.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, users should consider implementing manual session ID renewal upon authentication and ensure session identifiers are cleared or renewed on logout to mitigate session fixation risks.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-09-17T00:30:01.485Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6aac671755bf5e2cf5ffd6a1
Added to database: 09/17/2026, 22:17:59 UTC
Last enriched: 09/17/2026, 22:31:29 UTC
Last updated: 09/18/2026, 03:12:56 UTC
Views: 6
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.