What’s Vulnerable › Vulnerabilities
CVE-2026-81316: Same-named aggregates with differing filters are conflated in AshSql
- Severity: low (CVSS 2.1 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-08-30 · updated 2026-09-01
- Weakness: CWE-863
Description
Incorrect Authorization vulnerability in ash-project ash_sql allows a caller to receive an aggregate value computed over rows a more restrictive filter should have excluded, disclosing counts, sums, or lists across an authorization or tenancy boundary. AshSql.Aggregate.different_queries?/2 reports two aggregate queries as different only when their filter and their sort both differ. Aggregate queries rarely carry a sort, so two aggregates that share a name but carry entirely different filters compare as identical. The colliding aggregate keeps its name and is treated as already computed, and select_aggregates returns the first-registered variant's value. The same name reaches the builder twice with different filters when actor or tenant context is stamped into each aggregate's query, so a narrowly filtered aggregate can be served the value of a previously registered broad one. This issue affects ash_sql: from 0.1.0 before 0.7.1.
Affected products
- ash-project ash_sql: from 0.1.0 before 0.7.1 — fixed in 0.7.1
How to fix
Upgrade to a fixed version: ash-project ash_sql 0.7.1. Check the vendor advisory for mitigations.
References
- https://cna.erlef.org/cves/CVE-2026-81316.html
- https://github.com/ash-project/ash_sql/commit/4b95468e5434a3526571414219719c9518be6694
- https://github.com/ash-project/ash_sql/security/advisories/GHSA-v7pf-wjxc-7j5m
- https://osv.dev/vulnerability/EEF-CVE-2026-81316
- https://github.com/ash-project/ash_sql/security/advisories/GHSA-v7pf-wjxc-7j5m
Get alerted when CVE-2026-81316 or the next vulnerability affects your stack