CVE-2026-81318

Vulnérabilité faible dans ash_sql (ash-project)

CVSS 2.1 · Faible
EPSS 0.2%
ash-project•ash_sql•Versions : <3d95478cc9e1d5bfaf6144fe9b9793f29e5ab889, dd092ed273dec7bd2194352f24a39229fc8ae68b, <0.7.1, 0.1.0

Description

Incorrect Authorization vulnerability in ash-project ash_sql allows a caller in a schema-based multitenant application to receive aggregate values computed from another tenant's rows. When an aggregate is computed over a distinct query, AshSql.AggregateQuery.add_single_aggs/5 rebuilds the outer query from query.from.source alone, which is only the {table, schema} tuple and does not carry query.prefix or query.from.prefix. For strategy(:context) multitenancy those hold the tenant schema, so the rebuilt outer query reads the repo's default schema while the inner correlated subquery still reads the tenant schema, and the two are joined only on primary key. The aggregate, and any relationship join added off the prefix-less binding, is then computed against the wrong tenant's rows. The neighbouring limit and exists branches instead wrap the query with subquery/1, which preserves the prefix. This issue affects ash_sql: from 0.1.0 before 0.7.1.

Gravité et risque d'exploitation

CVE-2026-81318 obtient un score CVSS de 2.1/10, soit une gravité faible. Selon le modèle EPSS, la probabilité qu'elle soit exploitée dans les 30 prochains jours est de 0.17 %, ce qui la place devant 6.1 % des CVE référencées.

Que faire ?

  • Vérifiez si ash_sql (versions <3d95478cc9e1d5bfaf6144fe9b9793f29e5ab889, dd092ed273dec7bd2194352f24a39229fc8ae68b, <0.7.1, 0.1.0) est présent sur votre parc.
  • Appliquez le correctif ou la version corrigée indiqués dans les références de l'éditeur.
  • À défaut de correctif, limitez l'exposition (filtrage réseau, désactivation du composant).
  • Automatisez la détection : les agents CVE Heimdall (gratuits, open source) corrèlent l'inventaire de vos serveurs avec la base CVE.

Références