CVE-2026-114214
Loading a through relationship with a limit of 1 in Ash ignores the through path and returns unrelated destination records
- State
- Published
- Severity
- 6.0 Medium
- Published
- Oct 25, 2026
- Updated
- Oct 26, 2026
- Reserved
- Oct 25, 2026
Description
Incorrect Authorization vulnerability in ash-project ash allows a client to read destination records unrelated to the source record through a through relationship.
When a has_many relationship declared with through: was loaded for a single record with a limit of 1, or an unsorted has_one through relationship was loaded with a limit of 1, lateral_join?/4 in lib/ash/actions/read/relationships.ex chose the path that reads the destination without any filter linking it to the source. The load returned the first destination record by sort, or any other record with an offset. The read still runs the destination's policies but carries the relationship as accessing_from, so a client paging such a field (for example teachers(limit: 1, offset: n) through AshGraphql) can enumerate destination records that policies allow only when reached through that relationship.
This issue affects ash: from 3.24.0 before 3.37.1.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 4.0 | 6.0 Medium | CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N | EEF |
Weaknesses
- CWE-863 Incorrect Authorization
Affected Products
| Product | Versions |
|---|---|
ashash-project |
|
ashash-project |
|
References
- Loading a `through` relationship on a single record with `limit: 1` ignores the through path and returns arbitrary destination recordsvendor-advisoryrelated
- EEF CNA record for CVE-2026-114214related
- OSV record EEF-CVE-2026-114214related
- Introducing commit 24f41e2 in ash-project/ashrelated
- Fix commit e374633 in ash-project/ashpatch
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.