Skip to main content

AshAuthentication CVE-2026-110826

| EUVDEUVD-2026-116148 MEDIUM
2026-11-03 EEF
6.3
CVSS 4.0 · Vendor: EEF
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain victim session token
  2. Delivery
    Victim resets or changes password (non-atomic action)
  3. Exploit
    LogOutEverywhere guard evaluates before hash set, skips revocation
  4. Execution
    Attacker's stored token remains valid
  5. Impact
    Retain authenticated access to victim account

Vulnerability Assessment

Weakness
CWE
Exploitation Conditions

Exploitation requires all of the following: the log_out_everywhere add-on must be enabled with apply_on_password_change? true (which mix ash_authentication.install writes by default), together with tokens enabled, store_all_tokens? true, and require_token_presence_for_authentication? true; the password must be changed via a non-atomic update action - specifically the generated password reset action or the installer's change_password action - because the where: changing(hashed_password) guard is evaluated before the HashPasswordChange before_action hook sets the new hash, so the guard is always false and tokens are never revoked; and the attacker must already hold one of the victim's valid session tokens. Limiting factors: the attack presupposes a prior session-token compromise (the flaw only prevents the expected revocation, it grants no new access), the vulnerable add-on/configuration must be active, and only versions 4.5.0 before 4.15.1 and 5.0.0-rc.0 before 5.0.0-rc.16 are affected. The only complete fix stated by the vendor is upgrading to 4.15.1 or 5.0.0-rc.16.

Impact

This is a medium-severity, precondition-gated session-management flaw rather than a top-priority emergency. The supplied CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N, score 6.3) shows a network vector with low complexity but AT:P - an attack requirement - which encodes the key limiter stated in the advisory: the attacker must already hold one of the victim's valid session tokens, and the add-on must be configured with apply_on_password_change? true while the password is changed through a non-atomic action. PR:N reflects that no additional application privileges are needed once a token is held, and the impact is capped at VC:L/VI:L/VA:N (continued read/write access within the compromised session, no availability impact). No EPSS score was provided, so exploitation probability cannot be quantified from this data. The CVE is not listed in CISA KEV and there is no public exploit identified - only the GHSA advisory, the EEF/OSV records, and introducing/fix commits are referenced. The vuln.today decision label is 'this_month', consistent with a real-but-not-urgent issue: meaningful because it defeats a security control users explicitly opted into (log_out_everywhere / password-reset session revocation), but bounded because it presupposes an already-compromised session and a specific configuration. Net: a genuine but conditional priority to patch this month, not a widespread drive-by threat.

Exploit ScenarioDerived

An attacker who has already captured a victim's session token (e.g., via an earlier XSS, device theft, or token leak) continues to use that session. The victim, suspecting compromise, resets or changes their password expecting all sessions to be revoked; because the generated password-reset action and the installer's change_password action are non-atomic, the hashed_password change guard never fires and the stored tokens are not revoked, so the attacker's session remains valid. No public exploit code is identified; exploitation requires prior possession of a session token and the vulnerable configuration.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Nov 03, 2026

Sessions remain valid in AshAuthentication after a victim resets or changes their password, so an attacker who already holds one of the victim's session tokens stays signed in despite the credential change. Only deployments using the log_out_everywhere add-on with apply_on_password_change? true (which mix ash_authentication.install writes by default) - combined with tokens enabled, store_all_tokens? true and require_token_presence_for_authentication? true - are affected, and only when the password is changed through a non-atomic action such as the generated password reset action or the installer's change_password action; versions 4.5.0 before 4.15.1 and 5.0.0-rc.0 before 5.0.0-rc.16 are impacted. Severity is medium (CNA score 6.3 under CVSS 4.0; assessor vector CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N), no public exploit has been identified at time of analysis, and vendor-released patches are available in 4.15.1 and 5.0.0-rc.16.

RemediationAI

Vendor-released patch: upgrade ash_authentication to 4.15.1 (for the 4.5.x line) or 5.0.0-rc.16 (for the 5.0.0 release-candidate line); the vendor states upgrading is the only complete fix. The corresponding upstream fix commits are https://github.com/team-alembic/ash_authentication/commit/954697f168d55112b5050acddcd936b8bc1fba2b and https://github.com/team-alembic/ash_authentication/commit/2baef4eddeb604569d3564273d03eeef438e002c, and the advisory is https://github.com/team-alembic/ash_authentication/security/advisories/GHSA-j6f8-qcj9-gh4r. Until the upgrade is deployed, applications that enable the add-on can explicitly invoke the log_out_everywhere action (which revokes all non-expired stored tokens for a subject) as part of their password-reset and change_password flows, since the automatic invocation is what fails on non-atomic actions; this requires wiring an extra call into those flows and does not repair the broken guard for arbitrary non-atomic update actions. Changing apply_on_password_change? to false disables the feature rather than fixing it, and neither workaround removes the need to upgrade.

Affected VersionsENISA

ash_authentication 5.0.0-rc.0 <5.0.0-rc.16
ash_authentication 4.5.0 <4.15.1
ash_authentication 0993f944fbd8d668f941d2ca818da4a1d5917641 <*

Affected Packages

euvd ash_authentication fix: 4.15.1, 5.0.0-rc.16

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

AshAuthentication is an authentication library for the Elixir Ash framework, configured through Spark DSL extensions and transformers. The log_out_everywhere add-on, when configured with apply_on_password_change? true, has AshAuthentication.AddOn.LogOutEverywhere.Transformer attach an OnPasswordChange global change to update actions, guarded by where: changing(hashed_password). That guard is evaluated before the action's before_action hooks run, while AshAuthentication.Strategy.Password.HashPasswordChange writes the new password hash in a before_action hook - so on any non-atomic password change the guard evaluates false and the user's stored tokens are never revoked. The generated password reset action and the installer's change_password action are both non-atomic, which is exactly the configuration the installer produces. The root-cause class is improper session invalidation after an authentication credential change, which the CNA maps to CWE-1466; affected artifacts are cpe:2.3:a:team-alembic:ash_authentication for the 4.5.0-4.15.0 and 5.0.0-rc.0-5.0.0-rc.15 ranges. The flaw only defeats an expected revocation: it grants no new access, and an attacker must already possess a valid victim session token.

Know when Ash Authentication gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (EEF) PRIMARY 6.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.8 MEDIUM

AC:H because exploitation depends on the specific log_out_everywhere config, a non-atomic password change, and the attacker already holding a valid token; C:L/I:L for continued session access, A:N as no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (EEF).

CVSS VectorVendor: EEF

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Improper Session Invalidation after Authentication Credential Change vulnerability in team-alembic ash_authentication allows an attacker holding a victim's session token to stay signed in after the victim resets or changes their password.

With apply_on_password_change? true, AshAuthentication.AddOn.LogOutEverywhere.Transformer adds OnPasswordChange to update actions as a global change guarded by where: changing(hashed_password). That condition is evaluated before the action's before_action hooks run, but AshAuthentication.Strategy.Password.HashPasswordChange sets the new hash in a before_action hook, so for every non-atomic password change the condition is false and the user's stored tokens are not revoked. The generated password reset action and the installer's change_password action are both non-atomic.

This issue affects ash_authentication: from 4.5.0 before 4.15.1 and from 5.0.0-rc.0 before 5.0.0-rc.16.

Threat Intelligence Overview

Prevalence
Low
authentication library for the niche Elixir/Ash framework ecosystem
Data Quality
4 sources
Confidence: Medium
EUVD NVD CVE.org Vulnrichment GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-49757 CRITICAL POC
9.2 Jun 15

Account takeover in team-alembic AshAuthentication (0.1.0 to <4.14.0 and 5.0.0-rc.0 to <5.0.0-rc.10) lets an unauthentic

CVE-2025-25202 MEDIUM POC
6.3 Feb 11

Ash Authentication is an authentication framework for Elixir applications. Rated medium severity (CVSS 6.3), this vulner

CVE-2026-91039 CRITICAL
9.1 Sep 17

Authentication bypass in the Elixir library ash_authentication lets an attacker who operates one federated identity-prov

CVE-2026-88952 CRITICAL
9.1 Sep 17

Account takeover in AshAuthentication (Elixir/Ash) 4.14.0 through 4.14.x and 5.0.0-rc.10 through 5.0.0-rc.13 lets unauth

CVE-2026-85500 CRITICAL
9.1 Sep 17

Unconfirmed accounts can obtain an authenticated session in the AshAuthentication Elixir library, defeating the mandator

CVE-2026-86533 CRITICAL
9.1 Sep 17

Revoked sessions continue to be treated as fully authenticated on affected AshAuthentication and AshAuthentication Phoen

CVE-2026-82761 CRITICAL
9.1 Sep 17

Reusing a leaked single-use magic-link token is possible in the Elixir library ash_authentication because its validity c

CVE-2026-82760 HIGH
8.2 Sep 17

Denial of service in the AshAuthentication API-key sign-in strategy lets an unauthenticated, remote attacker exhaust ser

CVE-2026-65633 HIGH
7.6 Aug 25

JWT token replay in AshAuthentication exposes any application using the stateless bearer-token path to full account take

CVE-2026-119215 HIGH
7.6 Nov 03

An authenticated account holder can bind a TOTP authenticator secret they control onto another user's account in AshAuth

CVE-2026-80218 HIGH
7.6 Sep 17

Authentication bypass in the AshAuthentication library for Elixir/Ash lets an authenticated attacker who holds a valid s

CVE-2026-82685 HIGH
7.6 Sep 17

An authenticated account-takeover primitive exists in the Elixir library AshAuthentication (ash_authentication) versions

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy