CVE-2026-81637

LOW CVSS 4.0: 2.3 EPSS 0.61%
Updated Sep 18, 2026
Team-Alembic
Parameter Value
CVSS 2.3 (LOW)
Affected Versions 0.6.0 — 5.0.0-rc.14
Fixed In 4.15.0
Type CWE-613
Vendor Team-Alembic
Public PoC No

Insufficient Session Expiration vulnerability in team-alembic AshAuthentication allows an attacker who obtains a victim's OAuth2 state value to replay the callback and sign that victim into an attacker-controlled account. AshAuthentication.Strategy.OAuth2.Plug.callback/2 clears the stored session_params through a rebinding step inside its with chain, conn <- delete_session(conn, session_key). Elixir evaluates the else block in the scope enclosing the with, so every failure path (the provider returning ?error=access_denied, an invalid code, a token-exchange error, or a registration or sign-in failure) reaches store_authentication_result/2 holding the original connection and the session entry is never removed. The value the module's own comment describes as protection against a CSRF-related attack is therefore consumed only when authentication succeeds, and survives a cancelled or failed attempt until the next request phase or session expiry.

This issue affects ash_authentication: from 0.6.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.

Attack Parameters

Attack Vector
Network
Can be exploited remotely
Attack Complexity
High
Difficult to exploit
Attack Requirements
Present
Additional conditions required
Privileges Required
None
No privileges needed
User Interaction
Passive
Minimal interaction

Impact Assessment

Confidentiality
Low
Partial data leak
Integrity
Low
Partial data modification
Availability
None
No disruption

CVSS Vector v4.0

Weakness Type (CWE)

Vulnerable Products 2

Configuration From (including) Up to (excluding)
Team-Alembic Ash_Authentication
cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*
0.6.0 4.15.0
Team-Alembic Ash_Authentication
cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*
5.0.0-rc.0 5.0.0-rc.14