Impact
The vulnerability arises from improper neutralization of special elements in data query logic (CWE-943). When the manage_relationship function is used with on_lookup: :relate, the client supplied lookup value is not cast to the correct attribute type before being passed to Ash.Query.filter. This allows a nested map to be interpreted as a predicate, turning a lookup for a specific record into a query that matches any record fulfilling that condition. The resulting query can reveal whether a particular secret lookup key exists, effectively exposing that key as an oracle for the lookup value. While the read policy still applies, no authorization is circumvented, yet the disclosure of the secret key can enable attackers to forge relationships and potentially gain further linkage to data within the system.
Affected Systems
Ash Project’s Ash product is affected in versions starting with 1.52.0‑rc.11 up to, and including, 3.31.1. All releases within this range are vulnerable.
Risk and Exploitability
The CVSS score of 2.1 indicates a low severity overall, and the EPSS score is not available. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is a remote attacker sending carefully crafted relationship creation requests through an exposed API or client interface. Successful exploitation would allow the attacker to recover the secret lookup key, but it does not grant broader privileges or bypass existing read policies.
OpenCVE Enrichment