CVE-2026-78691
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Summary
Improper Neutralization of Special Elements in Data Query Logic vulnerability in ash-project ash_sql allows a user who supplies a search term to contains/2, string_starts_with/2, or string_ends_with/2 to inject live SQL LIKE wildcards, turning a literal substring search into an attacker-controlled pattern match.
The escape helpers in AshSql.Expr prefix % and _ with a backslash but never escape a backslash already present in the input. Because backslash is the default LIKE escape character, the escaping defeats itself: the input % becomes the pattern fragment \%, where \ is a literal backslash and the attacker's % remains a live wildcard. The search value stays parameterized, so this is confined to the LIKE pattern grammar rather than full SQL. An attacker can widen matches to probe values, slip past a negated contains(…) guard, or crash the query with a trailing lone backslash.
This issue affects ash_sql: from 0.1.1-rc.10 before 0.7.1.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| ash-project | ash_sql | 0.1.1-rc.10 < 0.7.1 | affected |
| ash-project | ash_sql | cfc7da474c5be2190fd62664a83a689377a8d512 < d95c55c64b1b42cc2fd30211a4913f3145156cd4 | affected |
Weaknesses
- CWE-943: CWE-943 Improper Neutralization of Special Elements in Data Query Logic
References
- https://github.com/ash-project/ash_sql/security/advisories/GHSA-5jgp-7mhc-6qqh
- https://cna.erlef.org/cves/CVE-2026-78691.html
- https://osv.dev/vulnerability/EEF-CVE-2026-78691
- https://github.com/ash-project/ash_sql/commit/d95c55c64b1b42cc2fd30211a4913f3145156cd4
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.