Vulnerability · Published Sep 1, 2026 · Assigned by EEF
CVE-2026-82740Ash.Type ignores outer array constraints on nested {:array, {:array, type}} inputs
Low 2.1
In plain English
A low-severity improper input validation in ash from ash-project. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 8% of all known vulnerabilities).
Official description
Improper Input Validation vulnerability in ash-project ash fails to enforce the outer array constraints on a doubly-nested {:array, {:array, type}} attribute, letting invalid input pass validation. Ash.Type.apply_constraints/3 (lib/ash/type/type.ex) handled the {:array, {:array, type}} case by mapping only the inner {:array, type} constraints over each element, so constraints declared on the outer array (such as min_length, max_length, and nil_items?) were never applied. An attacker could submit an outer list that violates those constraints (too many elements, or nil entries where disallowed) and have it accepted and persisted. The fix enforces the outer array constraints and adds explicit handling for nil and non-list inputs. This issue affects ash: from 2.16.1 before 3.32.2.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| ash-project | ash | 2.16.1 – before 3.32.2 |
| ash-project | ash | 7b50a401d85018371659e51c34c89d7e1d0c2ac9 – before c85ccff7dc6e3b0b3e40ad788b0056b3b6bee5ce |
Weakness: CWE-20 · Vector: CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N