{"id":"CVE-2026-82685","state":"PUBLISHED","title":"Confirmation token accepted on any record in AshAuthentication","description":"Authorization Bypass Through User-Controlled Key vulnerability in team-alembic AshAuthentication allows an authenticated attacker to overwrite and confirm another user's email address, and so take over that account. A confirmation token issued to one user is accepted on any other user's record.\n\nAshAuthentication.AddOn.Confirmation.ConfirmChange verifies the token's signature and its act claim, then applies the changes stored against that token to whichever record the changeset targets, never comparing the sub claim against changeset.data. An attacker who registers an account and changes their own email replays the resulting token against a victim's record id, writing in their own address with force_change_attributes/2 and stamping confirmed_at, after which an ordinary password reset yields the account. The library's own confirmation flow is unaffected, because AshAuthentication.AddOn.Confirmation.Actions.confirm/3 resolves sub to a user and targets that record.\n\nThis issue affects ash_authentication: from 0.5.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.","publishedAt":"2026-09-17T13:08:56.491Z","updatedAt":"2026-09-17T18:23:51.075Z","severity":{"score":7.6,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","source":"EEF"},"assigner":"EEF","products":["team-alembic ash_authentication"],"affected":[{"vendor":"team-alembic","product":"ash_authentication","packageName":"ash_authentication","packageURL":"pkg:hex/ash_authentication","defaultStatus":"unaffected","versions":[{"version":"0.5.0","status":"affected","lessThan":"4.15.0","versionType":"semver"},{"version":"5.0.0-rc.0","status":"affected","lessThan":"5.0.0-rc.14","versionType":"semver"}],"collectionURL":"https://repo.hex.pm","cpes":["cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange'"],"programFiles":["lib/ash_authentication/add_ons/confirmation/confirm_change.ex"],"programRoutines":[{"name":"'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange':change/3"}],"repo":"https://github.com/team-alembic/ash_authentication"},{"vendor":"team-alembic","product":"ash_authentication","packageName":"team-alembic/ash_authentication","packageURL":"pkg:github/team-alembic/ash_authentication","defaultStatus":"unaffected","versions":[{"version":"1d4bb00617aecae85c33f2ff5bc7e094c6449a6e","status":"affected","lessThan":"*","changes":[{"at":"d7c15c21d39c009206e010cd67e2d86370fe7a28","status":"unaffected"},{"at":"2a2396af131ab67e2f445b805fecce8e6ca86c0e","status":"unaffected"}],"versionType":"git"}],"collectionURL":"https://github.com","cpes":["cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange'"],"programFiles":["lib/ash_authentication/add_ons/confirmation/confirm_change.ex"],"programRoutines":[{"name":"'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange':change/3"}],"repo":"https://github.com/team-alembic/ash_authentication"}],"references":["https://github.com/team-alembic/ash_authentication/security/advisories/GHSA-g636-26vf-2w63","https://cna.erlef.org/cves/CVE-2026-82685.html","https://osv.dev/vulnerability/EEF-CVE-2026-82685","https://github.com/team-alembic/ash_authentication/commit/1d4bb00617aecae85c33f2ff5bc7e094c6449a6e","https://github.com/team-alembic/ash_authentication/commit/d7c15c21d39c009206e010cd67e2d86370fe7a28","https://github.com/team-alembic/ash_authentication/commit/2a2396af131ab67e2f445b805fecce8e6ca86c0e"],"weaknesses":["CWE-639"],"ingestedAt":"2026-10-29T20:13:15.269Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/82xxx/CVE-2026-82685.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-82685","state":"PUBLISHED","datePublished":"2026-09-17T13:08:56.491Z","dateUpdated":"2026-09-17T18:23:51.075Z","assignerShortName":"EEF","assignerOrgId":"6b3ad84c-e1a6-4bf7-a703-f496b71e49db","dateReserved":"2026-08-31T00:45:02.436Z"},"containers":{"cna":{"title":"Confirmation token accepted on any record in AshAuthentication","descriptions":[{"lang":"en","value":"Authorization Bypass Through User-Controlled Key vulnerability in team-alembic AshAuthentication allows an authenticated attacker to overwrite and confirm another user's email address, and so take over that account. A confirmation token issued to one user is accepted on any other user's record.\n\nAshAuthentication.AddOn.Confirmation.ConfirmChange verifies the token's signature and its act claim, then applies the changes stored against that token to whichever record the changeset targets, never comparing the sub claim against changeset.data. An attacker who registers an account and changes their own email replays the resulting token against a victim's record id, writing in their own address with force_change_attributes/2 and stamping confirmed_at, after which an ordinary password reset yields the account. The library's own confirmation flow is unaffected, because AshAuthentication.AddOn.Confirmation.Actions.confirm/3 resolves sub to a user and targets that record.\n\nThis issue affects ash_authentication: from 0.5.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14."}],"affected":[{"vendor":"team-alembic","product":"ash_authentication","packageName":"ash_authentication","packageURL":"pkg:hex/ash_authentication","defaultStatus":"unaffected","versions":[{"version":"0.5.0","status":"affected","lessThan":"4.15.0","versionType":"semver"},{"version":"5.0.0-rc.0","status":"affected","lessThan":"5.0.0-rc.14","versionType":"semver"}],"collectionURL":"https://repo.hex.pm","cpes":["cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange'"],"programFiles":["lib/ash_authentication/add_ons/confirmation/confirm_change.ex"],"programRoutines":[{"name":"'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange':change/3"}],"repo":"https://github.com/team-alembic/ash_authentication"},{"vendor":"team-alembic","product":"ash_authentication","packageName":"team-alembic/ash_authentication","packageURL":"pkg:github/team-alembic/ash_authentication","defaultStatus":"unaffected","versions":[{"version":"1d4bb00617aecae85c33f2ff5bc7e094c6449a6e","status":"affected","lessThan":"*","changes":[{"at":"d7c15c21d39c009206e010cd67e2d86370fe7a28","status":"unaffected"},{"at":"2a2396af131ab67e2f445b805fecce8e6ca86c0e","status":"unaffected"}],"versionType":"git"}],"collectionURL":"https://github.com","cpes":["cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange'"],"programFiles":["lib/ash_authentication/add_ons/confirmation/confirm_change.ex"],"programRoutines":[{"name":"'Elixir.AshAuthentication.AddOn.Confirmation.ConfirmChange':change/3"}],"repo":"https://github.com/team-alembic/ash_authentication"}],"references":[{"url":"https://github.com/team-alembic/ash_authentication/security/advisories/GHSA-g636-26vf-2w63","tags":["related","vendor-advisory"]},{"url":"https://cna.erlef.org/cves/CVE-2026-82685.html","name":"EEF CNA record for CVE-2026-82685","tags":["related"]},{"url":"https://osv.dev/vulnerability/EEF-CVE-2026-82685","name":"OSV record EEF-CVE-2026-82685","tags":["related"]},{"url":"https://github.com/team-alembic/ash_authentication/commit/1d4bb00617aecae85c33f2ff5bc7e094c6449a6e","name":"Introducing commit 1d4bb00 in team-alembic/ash_authentication","tags":["related"]},{"url":"https://github.com/team-alembic/ash_authentication/commit/d7c15c21d39c009206e010cd67e2d86370fe7a28","name":"Fix commit d7c15c2 in team-alembic/ash_authentication","tags":["patch"]},{"url":"https://github.com/team-alembic/ash_authentication/commit/2a2396af131ab67e2f445b805fecce8e6ca86c0e","name":"Fix commit 2a2396a in team-alembic/ash_authentication","tags":["patch"]}],"metrics":[{"cvssV4_0":{"Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","Safety":"NOT_DEFINED","attackComplexity":"LOW","attackRequirements":"PRESENT","attackVector":"NETWORK","baseScore":7.6,"baseSeverity":"HIGH","privilegesRequired":"LOW","providerUrgency":"NOT_DEFINED","subAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","userInteraction":"NONE","valueDensity":"NOT_DEFINED","vectorString":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","version":"4.0","vulnAvailabilityImpact":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"HIGH","vulnerabilityResponseEffort":"NOT_DEFINED"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-639","description":"CWE-639 Authorization Bypass Through User-Controlled Key","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"EEF","orgId":"6b3ad84c-e1a6-4bf7-a703-f496b71e49db","dateUpdated":"2026-09-17T13:08:56.491Z"},"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*","versionEndExcluding":"4.15.0","versionStartIncluding":"0.5.0","vulnerable":true},{"criteria":"cpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*","versionEndExcluding":"5.0.0-rc.14","versionStartIncluding":"5.0.0-rc.0","vulnerable":true}],"negate":false,"operator":"OR"}],"operator":"AND"}],"credits":[{"lang":"en","type":"reporter","value":"Peter Ullrich"},{"lang":"en","type":"remediation developer","value":"James Harton"},{"lang":"en","type":"analyst","value":"Jonatan Männchen / EEF"}],"dateAssigned":"2026-09-11T17:35:42.000Z","impacts":[{"capecId":"CAPEC-21","descriptions":[{"lang":"en","value":"CAPEC-21 Exploitation of Trusted Identifiers"}]}],"source":{"discovery":"INTERNAL"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-17T18:23:08.889793Z","id":"CVE-2026-82685","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-17T18:23:51.075Z"}}]}}}