What’s Vulnerable › Vulnerabilities
CVE-2026-82742: Ash.Filter.Runtime materializes a combinatorial cross-product over to-many relationships, exhausting memory
- Severity: medium (CVSS 5.9 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-01 · updated 2026-09-01
- Weakness: CWE-400
Description
Uncontrolled Resource Consumption vulnerability in ash-project ash lets an attacker exhaust node memory by matching a filter that spans multiple to-many relationships in memory. Ash.Filter.Runtime matches a filter against an in-memory record by first expanding the record into combinations of its related rows. flatten_relationships/2 (lib/ash/filter/runtime.ex) eagerly built the full Cartesian product across the filter's to-many relationship paths, so a record with K to-many relationships of M rows each materialized on the order of M^K scenarios before any predicate was checked. A filter or dataset that reaches several sizeable to-many relationships therefore allocates memory combinatorially and can exhaust the node. The fix streams the expansion lazily and short-circuits on the first matching scenario, bounding the work. This issue affects ash: from 1.29.0-rc0 before 3.32.2.
Affected products
- ash-project ash: from 1.29.0-rc0 before 3.32.2 — fixed in 3.32.2
How to fix
Upgrade to a fixed version: ash-project ash 3.32.2. Check the vendor advisory for mitigations.
References
- https://cna.erlef.org/cves/CVE-2026-82742.html
- https://github.com/ash-project/ash/commit/da07f009e889819ec410fa1f0f12534bfb9e21dd
- https://github.com/ash-project/ash/security/advisories/GHSA-mgwj-c69v-6f83
- https://osv.dev/vulnerability/EEF-CVE-2026-82742
Get alerted when CVE-2026-82742 or the next vulnerability affects your stack