πŸ” CVE Alert

CVE-2026-81638

UNKNOWN 0.0

Non-canonical ULID spellings are accepted and alias to the same record in ash_double_entry

CVSS Score
0.0
EPSS Score
0.0%
EPSS Percentile
0th

Improper Handling of Alternate Encoding vulnerability in ash-project ash_double_entry allows an attacker to submit several distinct string spellings of the same identifier. AshDoubleEntry.ULID renders a 128-bit ULID as 26 Crockford base-32 characters, but the first character encodes only 3 bits, so canonical values are 0 to 7. decode/1 in lib/ulid.ex masks the first character to its low 3 bits and valid?/1 accepts all 32 characters in that position, so 0..., 8..., G... and R... decode to the identical 16-byte value and resolve to the same row. When the type is exposed as a public ID over an HTTP or API boundary, an attacker-supplied ID can be spelled differently from the record it actually reads or writes, desynchronizing or bypassing string-level checks such as idempotency and deduplication keys, deny-lists, audit correlation, or signatures computed over the submitted ID. This issue affects ash_double_entry: from 0.1.0 before 1.0.19.

CWE CWE-173
Vendor ash-project
Product ash_double_entry
Published Sep 7, 2026
Last Updated Sep 8, 2026
Stay Ahead of the Next One

Get instant alerts for ash-project ash_double_entry

Be the first to know when new unknown vulnerabilities affecting ash-project ash_double_entry are published β€” delivered to Slack, Telegram or Discord.

Get Free Alerts β†’ Free Β· No credit card Β· 60 sec setup

Affected Versions

ash-project / ash_double_entry
0.1.0 < 1.0.19
ash-project / ash_double_entry
1e5f7ce8ff25f519c904731a29eb1258324e561a < d3e688d300a581ae214b3ca7d95ef4de63fbb050

References

NVD β†— CVE.org β†— EPSS Data β†—
github.com: https://github.com/ash-project/ash_double_entry/security/advisories/GHSA-qxp2-vgp9-268q cna.erlef.org: https://cna.erlef.org/cves/CVE-2026-81638.html osv.dev: https://osv.dev/vulnerability/EEF-CVE-2026-81638 github.com: https://github.com/ash-project/ash_double_entry/commit/d3e688d300a581ae214b3ca7d95ef4de63fbb050

Credits

Peter Ullrich πŸ” Peter Ullrich Zach Daniel / Ash Project Jonatan MΓ€nnchen / EEF