CVE-2026-82761

Vulnérabilité critique dans ash_authentication (team-alembic)

CVSS 9.1 · Critique
EPSS 0.6%
team-alembic•ash_authentication•Versions : 3.9.0, <5.0.0-rc.14, cf3d227ef25912cf1b0c5fa80f20001f5c46a102, <*, <4.15.0, 5.0.0-rc.0

Description

Time-of-check Time-of-use (TOCTOU) Race Condition vulnerability in team-alembic AshAuthentication allows an attacker holding a leaked magic link to replay its single-use token and authenticate as the target subject. A magic link configured with single_use_token?, which is the default, is meant to be redeemable exactly once, but nothing serialises the token's validity check against its consumption, so concurrent redemptions of one token all succeed and each yields a full user token. Sign-in verifies the JWT with Jwt.verify/4 and revokes it only afterwards: AshAuthentication.Strategy.MagicLink.SignInPreparation revokes in a Query.after_action callback, and AshAuthentication.Strategy.MagicLink.SignInChange in an after_transaction hook that runs once the sign-in has already committed. AshAuthentication.TokenResource.Actions.revoke/3 writes the revocation as an upsert, so a concurrent duplicate revocation silently succeeds instead of conflicting and no request ever loses the race. This issue affects ash_authentication: from 3.9.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.

Gravité et risque d'exploitation

CVE-2026-82761 obtient un score CVSS de 9.1/10, soit une gravité critique. Selon le modèle EPSS, la probabilité qu'elle soit exploitée dans les 30 prochains jours est de 0.56 %, ce qui la place devant 45.5 % des CVE référencées.

Que faire ?

  • Vérifiez si ash_authentication (versions 3.9.0, <5.0.0-rc.14, cf3d227ef25912cf1b0c5fa80f20001f5c46a102, <*, <4.15.0, 5.0.0-rc.0) est présent sur votre parc.
  • Appliquez le correctif ou la version corrigée indiqués dans les références de l'éditeur.
  • À défaut de correctif, limitez l'exposition (filtrage réseau, désactivation du composant).
  • Automatisez la détection : les agents CVE Heimdall (gratuits, open source) corrèlent l'inventaire de vos serveurs avec la base CVE.

Références