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-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.
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.

