Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

EEF-CVE-2026-85500

`require_confirmed_with` is not enforced on the action and fails open on an unreadable attribute in AshAuthentication
Back to all
CVE

EEF-CVE-2026-85500

`require_confirmed_with` is not enforced on the action and fails open on an unreadable attribute in AshAuthentication

Summary

Authentication Bypass by Primary Weakness vulnerability in team-alembic AshAuthentication allows an unconfirmed user to obtain a session, defeating a mandatory email confirmation requirement.

AshAuthentication.Strategy.Password.Actions.check_user/2 decides whether the attribute named by requireconfirmedwith is set using a bare is_nil(Map.get(user, value)). When that attribute is not selected on the loaded record Map.get/2 returns %Ash.NotLoaded{}, and when a field policy denies it for the current actor it returns %Ash.ForbiddenField{}. Neither is nil, so the rejection branch is skipped and sign-i

requireconfirmedwith is enforced in two places, and neither holds in every

configuration. signinwith_token and register are checked only inside

AshAuthentication.Strategy.Password.Actions, not on the action itself, so any caller

that invokes the action directly skips the check. An API layer such as AshGraphql or

AshJsonApi invokes the action directly, so this applies to the default configuration.

Where a check does run it compares the confirmation attribute against nil. That

attribute holds %Ash.NotLoaded{} or %Ash.ForbiddenField{} when it sets

selectbydefault?: false, when an API layer narrows the read's select, or when a

field policy hides it from the sign-in actor. Neither struct is nil, so those

configurations read every user as confirmed.

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

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.1
-
4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
C
H
U
0
-
C
H
U
-

Related Resources

No items found.

References

https://github.com/team-alembic/ashauthentication/security/advisories/GHSA-fc47-6pgw-wh22, https://cna.erlef.org/cves/CVE-2026-85500.html, https://github.com/team-alembic/ashauthentication/commit/7d37bc6e4df6697b5813d2f373f0fdb08f813f98, https://github.com/team-alembic/ashauthentication/commit/17f4c25a372d1778c9cc457759e6357570d83711, https://github.com/team-alembic/ashauthentication/commit/1076639a9d40213088d110c79ba6735b8cc85b16, https://hex.pm/packages/ash_authentication

Severity

0

CVSS Score
0
10

Basic Information

Base CVSS
0
EPSS Probability
0.00768%
EPSS Percentile
0.54325%
Introduced Version
4.3.8,5.0.0-rc.0,7d37bc6e4df6697b5813d2f373f0fdb08f813f98
Fix Available
4.15.0,5.0.0-rc.14,1076639a9d40213088d110c79ba6735b8cc85b16

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading