Skip to main content

AshAuthentication CVE-2026-86522

| EUVDEUVD-2026-81482 MEDIUM
Improper Output Neutralization for Logs (CWE-117)
2026-09-17 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
    Reach public password-reset endpoint
  2. Delivery
    Submit reset identity with newlines/control chars
  3. Exploit
    Identity interpolated unescaped into Logger.warning
  4. Execution
    Forged log lines written with attacker-chosen severity
  5. Impact
    Mislead operators / poison SIEM / repudiation

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A09:2025 - Security Logging & Alerting Failures
ASVS 5.0
V16 - Security Logging and Error Handling Log output neutralization
Exploitation Conditions

No authentication and no user interaction required: any attacker who can reach the application's password-reset request action (AshAuthentication.Strategy.Password.RequestPasswordReset) can exploit it against default configurations, provided the application uses the password strategy with password reset enabled. Exploitation requires only that the identity value (email or username) be accepted and reach the vulnerable Logger.warning call before validation, and its practical impact depends on logs being retained/reviewed or fed to a log-processing/SIEM system - hence the vendor's AT:P (an attack requirement beyond the attacker's control). Limiting factors: applications not exposing the password reset flow are unaffected, and the impact is confined to forged/misleading log entries (no confidentiality or availability effect).

Impact

This is a genuine but low-severity integrity issue, not a high-priority emergency. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N) scores 6.3 (Medium), reflecting that an unauthenticated remote attacker can trigger it, but the AT:P (attack requirement present) and the impact profile (VI:L/SI:L only; VC:N, VA:N) correctly limit it to log-record integrity - there is no code execution, data theft, or availability loss. No EPSS score, no CISA KEV listing, and no public exploit (PoC) were provided; the only 'source code' supplied is the vendor's own patch commit, not weaponized exploit code, so exploitation status is 'no public exploit identified at time of analysis.' The realistic harm is log forgery/repudiation: an attacker can inject fake log lines with attacker-chosen severity tags to mislead operators, hide activity, or poison downstream log-processing/SIEM pipelines. The signals are internally consistent (low technical impact, no exploitation evidence), so this belongs in routine patch cycles rather than emergency response. Note: the input provides only a CVSS 4.0 vector - no 3.1 vector - and the 'Information Disclosure' tag conflicts with the vector's VC:N (no confidentiality impact), so treat that tag as inaccurate.

Exploit ScenarioDerived

An attacker submits a password-reset request whose identity field (email/username) contains embedded newline and control characters plus a forged log line (e.g. a fake '[error]' or '[info]' entry). Because AshAuthentication interpolates this identity directly into a Logger.warning heredoc without escaping, the injected newline terminates the real record and the attacker-controlled text is written as an independent, authentic-looking application log line. No authentication is required and no public exploit code has been identified, but the technique is trivial to reproduce.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 17, 2026

Log forgery in the AshAuthentication Elixir library allows any remote attacker who can reach an application's password-reset request action to inject arbitrary, attacker-controlled lines into the application's logs, including forged severity tags and messages that appear to originate from the application itself. Affected versions are ash_authentication 4.2.0 through 4.14.x and 5.0.0-rc.0 through 5.0.0-rc.13; the flaw is CWE-117 (improper output neutralization for logs) and is rated 6.3 under CVSS v4.0, with the independent assessment settling on CVSS 3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N - an integrity-only, low-impact issue rather than a high-priority emergency. Impact is confined to misleading or forged log records (no confidentiality or availability effect) and materializes only where logs are retained, reviewed, or fed into a SIEM/log-processing pipeline, which is the 'attack requirement beyond the attacker's control' reflected in the AT:P vector component; no public exploit has been identified at time of analysis, though the upstream fix commits are public.

RemediationAI

Vendor-released patch: upgrade ash_authentication to 4.15.0 or later on the 4.x line, or to 5.0.0-rc.14 or later on the 5.0 pre-release line; the fixes are carried in the upstream commits https://github.com/team-alembic/ash_authentication/commit/fd19358bf0eee53ef13dcf17cc499bd4fb393981 and https://github.com/team-alembic/ash_authentication/commit/57c7cc3236bef0fa9da19cb315414f216488866d, with advisory details in GHSA-wg7g-r393-vr3g. If upgrading immediately is not possible, the most effective compensating control is to avoid feeding untrusted identity values into log sinks unchanged: restrict or disable the password-reset request action (or gate it behind rate limiting and a WAF rule rejecting newline and control characters in the email/username parameter) - the trade-off is that legitimate users lose or are slowed in self-service password recovery. Where the flow must stay open, ensure the application writes structured (JSON) log output rather than plain heredoc text lines, since a structured encoder would encode embedded newlines as escaped sequences, and disable or tightly scope any log-based alerting that trusts unsanitized message bodies, accepting that this reduces the fidelity of automated alerting until the patch is applied. Note that any log entries already written before patching should be treated as untrusted, since an attacker could have pre-seeded misleading records.

Affected VersionsENISA

ash_authentication 5.0.0-rc.0 <5.0.0-rc.14
ash_authentication 4.2.0 <4.15.0
ash_authentication 3954f277929712755aef57a4a3a821688f121316 <*

Affected Packages

euvd ash_authentication fix: 4.15.0, 5.0.0-rc.14

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 framework for the Elixir Ash ecosystem, and the vulnerable code path is AshAuthentication.Strategy.Password.RequestPasswordReset.run/3 in the password strategy's reset-request flow. The identity argument (the email or username supplied in the reset request) is interpolated directly into a Logger.warning/1 heredoc without escaping, truncation, or type restriction, whereas the resource value logged alongside it is passed through inspect/1, which would have neutralized embedded newlines and control characters. Because a newline in the identity terminates the log record, everything following it is emitted as a separate line, letting an attacker choose both the severity tag and the body of forged entries - the classic log-injection pattern described by CWE-117. The affected CPEs cover the team-alembic ash_authentication package across the two vulnerable ranges (4.2.0 to before 4.15.0, and 5.0.0-rc.0 to before 5.0.0-rc.14). Exploitation requires no authentication and no user interaction: any attacker who can reach the application's reset-request action on a default configuration with password reset enabled and whose identity value reaches the logging call before validation can trigger it. The correctness of any downstream log-driven decision (alert triage, audit review, SIEM correlation) is what is undermined; the underlying application state is not directly changed.

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:N/VI:L/VA:N/SC:N/SI:L/SA:N
vuln.today AI 5.3 MEDIUM

Remote unauthenticated with no interaction (AV:N/AC:L/PR:N/UI:N); impact is limited to log-record integrity (I:L) with no confidentiality or availability effect.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/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
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
Low
Subsequent system: Availability
None

DescriptionCVE.org

Improper Output Neutralization for Logs vulnerability in team-alembic AshAuthentication allows an unauthenticated attacker to forge application log entries by submitting a password reset identity containing newlines or control characters.

AshAuthentication.Strategy.Password.RequestPasswordReset.run/3 interpolates the identity argument, the email or username taken straight from the reset request, into its Logger.warning/1 heredocs without escaping, truncating or type-restricting it. The resource logged beside it is passed through inspect/1, which would have neutralized the value. A newline in the identity therefore ends the log record, and everything after it is written as a line of its own, so an attacker chooses the severity tag and the content of entries that appear to have come from the application.

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

Threat Intelligence Overview

EPSS Score
0.5%
Top 57% exploitable
Prevalence
Low
Auth library for the niche Elixir/Ash framework ecosystem
Data Quality
4 sources
Confidence: Medium

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 0.5%
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· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

33
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
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-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

CVE-2026-81632 HIGH
7.2 Sep 17

Password sign-in in AshAuthentication Phoenix (ash_authentication_phoenix 1.7.0 to <2.17.4 and 3.0.0-rc.0 to <3.0.0-rc.1

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