Confirmation token accepted on any record in AshAuthentication
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. AshAuthentication.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. This 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.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-82685
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 13:07 UTC · Revision 1
Source evidence
Confirmation token accepted on any record in AshAuthentication
core-osv · Original sourcePublished 17 Sept 2026, 13:08 UTC
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. AshAuthentication.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. This 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.
osv:CVE-2026-82685
Complete source record
{
"id": "8b1fac8707c789df5646364b30d48b247467ba97c3b36916f119bddc6b08facd",
"url": "https://osv.dev/vulnerability/CVE-2026-82685",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Confirmation token accepted on any record in AshAuthentication",
"summary": "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. AshAuthentication.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. This 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.",
"evidence": "osv:CVE-2026-82685",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-82685",
"aliases": [
"CVE-2026-82685",
"EEF-CVE-2026-82685",
"GHSA-g636-26vf-2w63"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "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"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/team-alembic/ash_authentication",
"type": "GIT",
"events": [
{
"introduced": "1d4bb00617aecae85c33f2ff5bc7e094c6449a6e"
},
{
"fixed": "d7c15c21d39c009206e010cd67e2d86370fe7a28"
},
{
"introduced": "73c7788076a01f4336b624a7cc9650492d917135"
},
{
"fixed": "d6b2be35cf8f0b8ab84e7a934cfb0d91de0a3c17"
},
{
"introduced": "6767fe27eb952e5bc09aa2e5a7d8f96f5a1c424a"
},
{
"fixed": "fea75958a081ed337ceb578396174039694c48df"
},
{
"fixed": "1d4bb00617aecae85c33f2ff5bc7e094c6449a6e"
},
{
"fixed": "2a2396af131ab67e2f445b805fecce8e6ca86c0e"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "1d4bb00617aecae85c33f2ff5bc7e094c6449a6e"
},
{
"fixed": "d7c15c21d39c009206e010cd67e2d86370fe7a28"
}
],
"source": "AFFECTED_FIELD",
"strategy": "ChangesAt"
},
{
"range": [
{
"introduced": "0.5.0"
},
{
"fixed": "4.15.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "5.0.0-rc.0"
},
{
"fixed": "5.0.0-rc.14"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "1d4bb00617aecae85c33f2ff5bc7e094c6449a6e"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "d7c15c21d39c009206e010cd67e2d86370fe7a28"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "2a2396af131ab67e2f445b805fecce8e6ca86c0e"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"v4.14.2",
"v5.0.0-rc.13",
"v4.14.1",
"v5.0.0-rc.12",
"v5.0.0-rc.11",
"v5.0.0-rc.10",
"v4.14.0",
"v4.13.7",
"5.0.0-rc.9",
"5.0.0-rc.8",
"v5.0.0-rc.7",
"v5.0.0-rc.6",
"v5.0.0-rc.5",
"v5.0.0-rc.4",
"v5.0.0-rc.3",
"v5.0.0-rc.2",
"v5.0.0-rc.1",
"v5.0.0-rc.0",
"v4.13.6",
"v4.13.5",
"v4.13.4",
"v4.13.3",
"v4.13.2",
"v4.13.1",
"v4.13.0",
"v4.12.0",
"v4.11.0",
"v4.10.0",
"v4.9.9",
"v4.9.8",
"v4.9.7",
"v4.9.6",
"v4.9.5",
"v4.9.4",
"v4.9.3",
"v4.9.2",
"v4.9.1",
"v4.9.0",
"v4.8.7",
"v4.8.5",
"v4.8.4",
"v4.8.3",
"v4.8.2",
"v4.8.1",
"v4.8.0",
"v4.7.7",
"v4.7.6",
"v4.7.5",
"v4.7.4",
"v4.7.3",
"v4.7.2",
"v4.7.1",
"v4.7.0",
"v4.6.4",
"v4.6.3",
"v4.6.2",
"v4.6.1",
"v4.6.0",
"v4.5.6",
"v4.5.5",
"v4.5.4",
"v4.5.3",
"v4.5.2",
"v4.5.1",
"v4.4.9",
"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",
"v4.0.4",
"v4.0.3",
"v4.0.2",
"v4.0.1",
"v4.0.0",
"v4.0.0-rc.7",
"v4.0.0-rc.6",
"v4.0.0-rc.5",
"v4.0.0-rc.4",
"v4.0.0-rc.3",
"v4.0.0-rc.2",
"v4.0.0-rc.1",
"v4.0.0-rc.0",
"v3.12.4",
"v3.12.3",
"v3.12.2",
"v3.12.1",
"v3.12.0",
"v3.11.16",
"v3.11.15",
"v3.11.14",
"v3.11.13",
"v3.11.12",
"v3.11.10",
"v3.11.9",
"v3.11.8",
"v3.11.7",
"v3.11.6",
"v3.11.5",
"v3.11.4",
"v3.11.3",
"v3.11.2",
"v3.11.1",
"v3.11.0",
"v3.10.8",
"v3.10.7",
"v3.10.6",
"v3.10.5",
"v3.10.4",
"v3.10.2",
"v3.10.1",
"v3.10.0",
"v3.9.6",
"v3.9.5",
"v3.9.4",
"v3.9.3",
"v3.9.2",
"v3.9.0",
"v3.7.9",
"v3.7.8",
"v3.7.6",
"v3.7.5",
"v3.7.4",
"v3.7.3",
"v3.7.2",
"v3.7.1",
"v3.7.0",
"v3.6.1",
"v3.5.3",
"v3.5.2",
"v3.5.1",
"v3.5.0",
"v3.4.2",
"v3.4.1",
"v3.4.0",
"v3.3.1",
"v3.3.0",
"v3.2.2",
"v3.2.1",
"v3.2.0",
"v3.1.0",
"v3.0.4",
"v3.0.3",
"v3.0.2",
"v3.0.1",
"v3.0.0",
"v2.0.1",
"v2.0.0",
"v1.0.0",
"v0.6.1",
"v0.6.0",
"v0.5.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-82685.json"
}
}
],
"modified": "2026-10-28T02:30:50.903455215Z",
"provider": "osv",
"references": [
"https://cna.erlef.org/cves/CVE-2026-82685.html",
"https://github.com",
"https://osv.dev/vulnerability/EEF-CVE-2026-82685",
"https://repo.hex.pm",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/82xxx/CVE-2026-82685.json",
"https://github.com/team-alembic/ash_authentication/security/advisories/GHSA-g636-26vf-2w63",
"https://nvd.nist.gov/vuln/detail/CVE-2026-82685",
"https://github.com/team-alembic/ash_authentication/commit/1d4bb00617aecae85c33f2ff5bc7e094c6449a6e",
"https://github.com/team-alembic/ash_authentication/commit/2a2396af131ab67e2f445b805fecce8e6ca86c0e",
"https://github.com/team-alembic/ash_authentication/commit/d7c15c21d39c009206e010cd67e2d86370fe7a28",
"https://github.com/team-alembic/ash_authentication"
],
"provider_metadata": {
"cwe_ids": [
"CWE-639"
],
"cna_assigner": "EEF",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/82xxx/CVE-2026-82685.json"
}
},
"related_cves": [
{
"value": "CVE-2026-82685",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 519393,
"published_at": "2026-09-17T13:08:56.491+00:00"
}