Katalog CVE

CVE-2026-78691

NiskieCVSS 2.1
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Podatność w ash_sql pozwala użytkownikowi, który dostarcza termin wyszukiwania do funkcji contains/2, string_starts_with/2 lub string_ends_with/2, na wstrzyknięcie dzikich kart LIKE do zapytania SQL, zamieniając dosłowne wyszukiwanie podciągu na wzorzec kontrolowany przez atakującego. Dzieje się tak, ponieważ funkcje pomocnicze nie escapują backslashy, co pozwala na obejście escapowania i aktywację dzikich kart.

Ocena ryzyka

Atakujący może rozszerzyć dopasowania, aby sondować dane, ominąć negowane warunki contains lub spowodować błąd zapytania, co może prowadzić do ujawnienia informacji lub zakłócenia działania.

Rekomendacja

Zaleca się aktualizację ash_sql do wersji 0.7.1 lub nowszej oraz unikanie przekazywania danych użytkownika do funkcji wyszukiwania bez odpowiedniego escapowania.

Inne podatności w ash_sql

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS