Am I affected?

type your ash_authentication version to check

Description

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.

Weaknesses & attack patterns

Weakness

CWE-117 · Improper Output Neutralization for Logs in catalog → MITRE ↗

Attack patterns

CAPEC-93 · Log Injection-Tampering-Forging MITRE ↗

Affected — Hex / ash_authentication Hex.pm ↗ Repository ↗

4.2.0 < 4.15.0 affected
5.0 series 5.0.0-rc.0 < 5.0.0-rc.14 affected
every other version: unaffected
cpe cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*
modules · source files · routines
modules 'Elixir.AshAuthentication.Strategy.Password.RequestPasswordReset'
source files lib/ash_authentication/strategies/password/request_password_reset.ex
routines 'Elixir.AshAuthentication.Strategy.Password.RequestPasswordReset':run/3

Affected — GitHub / team-alembic/ash_authentication Repository ↗

3954f27 and up affected
fd19358 not affected
57c7cc3 not affected
every other version: unaffected
cpe cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*
modules · source files · routines
modules 'Elixir.AshAuthentication.Strategy.Password.RequestPasswordReset'
source files lib/ash_authentication/strategies/password/request_password_reset.ex
routines 'Elixir.AshAuthentication.Strategy.Password.RequestPasswordReset':run/3

References

Credits

Peter Ullrich Reporter
Jonatan Männchen / EEF Analyst
James Harton Remediation developer

CVSS breakdown

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
« All CVEs