CVE-2026-82760 json
Superlinear base62 decoding exhausts CPU and memory in AshAuthentication API key sign-in
published 2026-09-17 52 d ago modified 2026-09-18 51 d ago also EEF-CVE-2026-82760 , GHSA-q876-xr24-2mcx , EUVD-2026-81478
- cvss
- 8.2
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.7%
- EPSS 0.7% chance of exploitation in 30 days, percentile 54%
- public exploits
- 0
- none known
Summary
Inefficient Algorithmic Complexity vulnerability in team-alembic AshAuthentication allows an unauthenticated attacker to exhaust CPU and memory via an oversized base62 segment in a submitted API key.
AshAuthentication.Base.decode62/1 in lib/ash_authentication/base.ex splits its argument into one binary per character and folds it with charval62/2, which recomputes Integer.pow(62, index) at every position instead of accumulating by Horner's method, so cost grows roughly cubically in the input length. bindecode62/1 in the same module is quadratic through Integer.undigits/2 and Integer.digits/2. Neither function caps byte_size/1, and AshAuthentication.Strategy.ApiKey.SignInPreparation passes the underscore-separated segments of the submitted key straight into both, before any key lookup and without prior authentication. The surrounding rescue clauses catch exceptions, not CPU or memory exhaustion.
This issue affects ash_authentication: from 4.8.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.14.
Patch / fix
- hex ash_authentication 4.15.0, 5.0.0-rc.14
- team-alembic ash_authentication 4.15.0, 5.0.0-rc.14
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 52 d ago
Exploit prediction
0.74% chance of exploitation in the next 30 days, higher than 54% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| hex | ash_authentication | >=4.8.0, <4.15.0 >=5.0.0-rc.0, <5.0.0-rc.14 |
4.15.0 5.0.0-rc.14 |
Affected products
- team-alembic ash_authentication
Classification
- Weakness
-
- CWE-407 Inefficient Algorithmic Complexity
References
-
github.com
/team-alembic/ash_authentication/commit/f3a53f480088419788d5c3934af3131fa9066773
related, web
-
github.com
/team-alembic/ash_authentication/commit/d5a5d4cb5cc17fbd6e2a120a6111b47accad4b8e
patch
-
github.com
/team-alembic/ash_authentication/commit/dfb19c897853686ab481c5e773f7a1a0c74dea04
patch
-
github.com
/team-alembic/ash_authentication/security/advisories/GHSA-q876-xr24-2mcx
related, vendor-advisory, advisory
-
cna.erlef.org
/cves/CVE-2026-82760.html
related, web
-
osv.dev
/vulnerability/EEF-CVE-2026-82760
related
-
hex.pm
/packages/ash_authentication
package
Sources
- CVE List CVE-2026-82760
- NVD CVE-2026-82760
- OSV EEF-CVE-2026-82760
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.