Vulnerability advisory

CVE-2025-25202

Ash Authentication has flawed token revocation checking logic in actions generated by `mix ash_authentication.install`

Published Updated OSV record ↗

Also known as GHSA-qrm9-f75w-hg4c

Severity
  • CVSS 4.0CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/team-alembic/ash_authentication ↗
1933496a9c682d657d8323c364370c25ee8af812 to before 34c7a6d18c256bcd35f038df03b89d319678510f34c7a6d18c256bcd35f038df03b89d319678510f
Not specified2dee55252df26fe3d990ff1199397cdcf1bfea8a
Also listed as affected (26)
  • v4.4.8
  • v4.4.7
  • v4.4.6
  • v4.4.5
  • v4.4.4
  • v4.4.3
  • v4.4.2
  • v4.4.1
  • v4.4.0
  • v4.3.12
  • v4.3.10
  • v4.3.9
  • v4.3.7
  • v4.3.6
  • v4.3.4
  • v4.3.3
  • v4.3.2
  • v4.3.1
  • v4.3.0
  • v4.2.7
  • v4.2.5
  • v4.2.3
  • v4.2.2
  • v4.2.1
  • v4.2.0
  • v4.1.0

Description

Ash Authentication is an authentication framework for Elixir applications. Applications which have been bootstrapped by the igniter installer present since AshAuthentication v4.1.0 and who have used the magic link strategy or are manually revoking tokens are affected by revoked tokens being allowed to verify as valid. Unless one hase implemented any kind of custom token revocation feature in your application, then one will not be affected. The impact here for users using builtin functionality is that magic link tokens are reusable until they expire. With that said, magic link tokens are only valid for 10 minutes, so the surface area for abuse is extremely low here. The flaw is patched in version 4.4.9. Additionally a compile time warning is shown to users with remediation instructions if they upgrade. 4.4.9 ships with an upgrader, so those who use mix igniter.upgrade ash_authentication will have the necessary patch applied. Otherwise, one may run the upgrader manually as described in the error message. As a workaround, delete the generated :revoked? generic action in the token resource. This will cause it to use the one internal to Ash Authentication which has always been correct. Alternatively, manually make the changes that are included in the patch.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools