CVE-2026-78691: falha de baixa gravidade em ash-project ash_sql
Unescaped backslash allows LIKE wildcard injection in AshSql string search
Publicada em · Atualizada em
Aviso por e-mail quando ela entrar no KEV, ganhar PoC pública ou subir de nota.
8Vexday Risk Score
Sem sinal de exploração. Nenhum artefato público de exploração conhecido até agora.
ssvc Trackcvss 2.1epss 0.2%
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.
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
Produtos afetados
ash-project · ash_sqlCVEs relacionadas — ash-project ash_sql
No mesmo produto, das mais perigosas para as menos.
CVE-2026-80227LOWSQL string_trim removes only spaces, diverging from in-memory trimming in AshSqlEPSS 0.4%CVE-2026-77454MEDIUMexists/2 predicate silently dropped on limited relationships with a parent() filter in AshSqlEPSS 0.2%CVE-2026-81316LOWSame-named aggregates with differing filters are conflated in AshSqlEPSS 0.2%CVE-2026-81318LOWDistinct-query aggregate drops the tenant schema prefix, leaking across tenants in AshSqlEPSS 0.2%