Katalog CVE

CVE-2026-85689

ŚrednieCVSS 6.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.25%

Percentyl 17 - wyżej niż 17% wszystkich znanych CVE

Streszczenie

llmware 0.4.6 zawiera podatność na wstrzyknięcie SQL w warstwie bazy danych kolekcji (llmware/resources.py), gdzie wartości filtrów i wyszukiwań są bezpośrednio interpolowane do klauzul SQL WHERE bez parametryzacji lub escapowania, zarówno w backendach SQLite, jak i PostgreSQL. Walidator filtrów sprawdza tylko klucze względem listy dozwolonych i nigdy nie oczyszcza wartości. Wartości filtrów kontrolowane przez atakującego, które docierają do publicznego API przez Library.block_lookup oraz Query.text_query_with_custom_filter / text_query_by_author_or_speaker, mogą zneutralizować zamierzony filtr, aby ujawnić wiersze, do których wywołujący nie miał dostępu (ujawnienie między dokumentami/kolekcjami); w PostgreSQL błąd umożliwia wstrzyknięcie SQL oparte na boolean i UNION.

Ocena ryzyka

Atakujący może uzyskać nieautoryzowany dostęp do danych w innych dokumentach lub kolekcjach, a w przypadku PostgreSQL może wykonać dowolne zapytania SQL, co może prowadzić do naruszenia poufności i integralności danych.

Rekomendacja

Zaktualizuj llmware do wersji z poprawką oraz unikaj przekazywania wartości filtrów od użytkowników bez odpowiedniego oczyszczania lub parametryzacji.

Powiązane podatności

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

llmware 0.4.6 contains an SQL injection vulnerability in the collection-database layer (llmware/resources.py) where filter and lookup values are directly string-interpolated into SQL WHERE clauses without parameterization or escaping, in both the SQLite and PostgreSQL backends. The filter validator only checks keys against an allow-list and never sanitizes values. Attacker-controlled filter values reaching the public API via Library.block_lookup and Query.text_query_with_custom_filter / text_query_by_author_or_speaker can neutralize the intended filter to disclose rows the caller was scoped out of (cross-document/cross-collection disclosure); on PostgreSQL the flaw permits boolean- and UNION-based SQL injection.

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