CVE-2026-24477
WysokieStreszczenie
AnythingLLM przed wersją 1.10.0, gdy jest skonfigurowany z Qdrant jako bazą wektorową z kluczem API, może ujawnić ten klucz w postaci zwykłego tekstu nieuwierzytelnionym użytkownikom przez endpoint `/api/setup-complete`. Ujawnienie klucza pozwala atakującemu na pełny dostęp do bazy wektorowej Qdrant.
Ocena ryzyka
Atakujący może uzyskać pełny odczyt/zapis do bazy wektorowej, co może prowadzić do naruszenia poufności przesłanych dokumentów i kompromitacji funkcji wyszukiwania semantycznego.
Rekomendacja
Zaktualizuj AnythingLLM do wersji 1.10.0 lub nowszej, która zawiera poprawkę.
Inne podatności w AnythingLLM
Zobacz wszystkie- CVE-2026-24478Wysokie
AnythingLLM przed wersją 1.10.0 ma krytyczną podatność na przechodzenie po ścieżkach (Path Traversal) w integracji DrupalWiki, co pozwala złośliwemu administratorowi (lub atakującemu, który przekona administratora do skonfigurowania złośliwego adresu URL DrupalWiki) na zapisywanie dowolnych plików na serwerze. Może to prowadzić do zdalnego wykonania kodu (RCE).
- CVE-2026-88055Średnie
AnythingLLM w wersji 1.16.1 i wcześniejszych pozwala roli manager przechowywać wartości meta_page_title lub meta_page_favicon przez /api/admin/system-preferences, które są wstawiane do HTML strony głównej bez escapowania. Wartości przechodzą niezmienione przez systemSettings.js i trafiają do MetaGenerator.generate(), gdzie są konkatenowane do HTML.
- CVE-2026-72917Średnie
W AnythingLLM w wersjach od 1.0.0 do 1.15.0 proces odzyskiwania konta bez uwierzytelnienia ma wadę w funkcji recoverAccount(), która nie przycina wartości kodów odzyskiwania przed ich deduplikacją. Dzięki temu atakujący, znając nazwę użytkownika i jeden kod odzyskiwania, może dwukrotnie wysłać ten sam kod z różnymi spacjami i spełnić wymóg dwóch kodów, a następnie przejąć konto, w tym administratora.
- CVE-2026-55611Nieznane
Podatność w AnythingLLM w wersjach od 1.11.1 do 1.14.1 umożliwia menedżerowi lub administratorowi (w trybie wieloużytkownikowym) usunięcie pliku przetworzonego dowolnego innego użytkownika w dowolnym obszarze roboczym, nawet jeśli nie jest jego członkiem. Problem wynika z braku sprawdzenia własności pliku w przepływie POST /api/workspace/:slug/embed-parsed-file/:fileId, gdzie plik jest usuwany wyłącznie na podstawie identyfikatora numerycznego, a serwer zwraca komunikat „Nie znaleziono pliku” mimo faktycznego usunięcia.
- CVE-2026-48789Średnie
Aplikacja AnythingLLM przed wersją 1.13.0 na systemie Windows pozwalała na wykorzystanie zakodowanej absolutnej ścieżki do folderu dokumentów, co mogło prowadzić do uzyskania dostępu do plików poza zamierzonym katalogiem dokumentów.
- CVE-2026-48116Wysokie
W AnythingLLM przed wersją 1.13.0, umiejętność agenta filesystem-search-files przekazuje wzorzec kontrolowany przez LLM do narzędzia ripgrep jako argument pozycyjny bez separatora --. ripgrep interpretuje argumenty zaczynające się od - jako opcje, więc wzorzec --pre=/bin/sh zamienia ripgrep w executor skryptów, uruchamiając /bin/sh dla każdego pliku. Atakujący mogą to wykorzystać wraz z umiejętnością filesystem-write-text-file do wykonania dowolnych poleceń w kontenerze serwera.
- CVE-2026-47713Niskie
W AnythingLLM przed wersją 1.13.0, zatwierdzony token urządzenia mobilnego utworzony w trybie jednoosobowym może przetrwać migrację do trybu wieloosobowego, nawet gdy rekord urządzenia ma userId = null. W trybie wieloosobowym taki nieaktualny token jest nadal akceptowany przez middleware uwierzytelniania mobilnego, co pozwala na wyliczenie obszarów roboczych i treści bez filtrowania per-użytkownika.
- CVE-2026-45403Niskie
W AnythingLLM przed wersją 1.13.0 narzędzie do kopiowania plików agenta sprawdza tylko najwyższy poziom ścieżek źródłowych i docelowych. Rekurencyjna funkcja kopiująca nie weryfikuje każdego elementu potomnego ani nie odrzuca dowiązań symbolicznych, co pozwala na ominięcie ograniczeń i skopiowanie plików spoza dozwolonego katalogu głównego.
- CVE-2026-42456Średnie
Podatność IDOR w AnythingLLM przed wersją 1.12.1 umożliwia uwierzytelnionemu użytkownikowi dostęp do odpowiedzi asystenta innego użytkownika w formie audio. Endpoint GET /api/workspace/:slug/tts/:chatId nie sprawdza własności czatu, tylko członkostwa w przestrzeni roboczej.
- CVE-2025-63390Średnie
W AnythingLLM v1.8.5 wykryto podatność polegającą na obejściu uwierzytelnienia w punkcie końcowym /api/workspaces. Brak odpowiednich kontroli uwierzytelniania umożliwia nieuwierzytelnionym zdalnym atakującym enumerację i pobieranie szczegółowych informacji o wszystkich skonfigurowanych przestrzeniach roboczych, w tym identyfikatorach, konfiguracjach modeli AI, promptach systemowych, parametrach operacyjnych i ustawieniach wyszukiwania wektorowego.
Oryginalny opis (angielski, źródło NVD)
AnythingLLM is an application that turns pieces of content into context that any LLM can use as references during chatting. If AnythingLLM prior to version 1.10.0 is configured to use Qdrant as the vector database with an API key, this QdrantApiKey could be exposed in plain text to unauthenticated users via the `/api/setup-complete` endpoint. Leakage of QdrantApiKey allows an unauthenticated attacker full read/write access to the Qdrant vector database instance used by AnythingLLM. Since Qdrant often stores the core knowledge base for RAG in AnythingLLM, this can lead to complete compromise of the semantic search / retrieval functionality and indirect leakage of confidential uploaded documents. Version 1.10.0 patches the issue.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

