CVE-2026-86688: Session id is not renewed on authentication in ash_authentication, allowing session fixation

Published Sep 17, 2026
·
Updated

Session Fixation vulnerability in team-alembic ashauthentication 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.storeinsession/2 writes the authenticated subject into the existing session with Plug.Conn.putsession/3 and never calls Plug.Conn.configuresession(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 ashauthenticationphoenix.install, and remember-me auto-login. AshAuthentication.Phoenix.Plug.storeinsession/2 is a defdelegate to it. Logout does not close the window either, because clearsession/2 ends with Plug.Conn.clearsession/1, which clears session contents but leaves the identifier intact, so a planted identifier survives a logout-then-login cycle.

This issue affects ashauthentication: from 0.2.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.

Affected Software

2 affected components
ash_authentication>0.2.0<4.15.0
ash_authentication>5.0.0-rc.0<5.0.0-rc.14

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade team-alembic/ash_authentication to a version that resolves this vulnerability.

    Fixed in 4.15.0
  2. Upgrade

    Upgrade team-alembic/ash_authentication to a version that resolves this vulnerability.

    Fixed in 5.0.0-rc.14

Event History

Sep 17, 2026
CVE Published
via MITRE·09:58 PM
Data Sourced
via MITRE·09:58 PM
DescriptionWeakness

Frequently Asked Questions

1

Which authentication paths are affected?

All authentication events that use the shared session helper are affected, including the default success/4 callback, the AuthController generated by mix ash_authentication_phoenix.install, remember-me auto-login, and AshAuthentication.Phoenix.Plug.store_in_session/2.

2

What must an attacker do to exploit this issue?

The attacker must be able to plant a session identifier in the victim's browser before the victim authenticates. If the victim then signs in, the existing identifier remains associated with the authenticated session, allowing the attacker to retain access through that session.

3

Does logging out invalidate a planted session identifier?

No. The logout path clears session contents but does not renew or invalidate the session identifier, so a planted identifier can survive a logout-then-login cycle.

4

Which versions need remediation?

Affected versions are ash_authentication 0.2.0 through versions before 4.15.0, and 5.0.0-rc.0 through versions before 5.0.0-rc.14. Upgrading to 4.15.0 or 5.0.0-rc.14, as applicable, remediates the affected version ranges.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203