CVE-2026-58580
ŚrednieCVSS 5.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
LobeChat w wersji do 2.2.9 z wdrożeniem serwer-baza danych jest podatny na naruszenie autoryzacji na poziomie obiektu w modelu MessageModel. Metody updateMessagePlugin, updatePluginState, updatePluginError, updateTTS i updateTranslate filtrują docelowe wiersze wyłącznie po identyfikatorze wiadomości, pomijając zakres userId stosowany w innych metodach, a findMessagePlugin odczytuje dane wyłącznie po identyfikatorze. Uwierzytelniony użytkownik znający identyfikator wiadomości innego użytkownika może nadpisać metadane wywołań narzędzi pluginu, stan/błąd pluginu, rekordy zamiany tekstu na mowę i tłumaczenia ofiary, a zmodyfikowana treść jest zwracana ofierze.
Ocena ryzyka
Ryzyko polega na możliwości manipulacji danymi komunikacyjnymi innego użytkownika, co może prowadzić do naruszenia integralności i poufności informacji, a także do podszywania się pod ofiarę w kontekście wtyczek i usług głosowych/tłumaczeniowych.
Rekomendacja
Należy niezwłocznie zaktualizować LobeChat do wersji nowszej niż 2.2.9, która zawiera poprawkę usuwającą lukę w autoryzacji. Do czasu aktualizacji zaleca się ograniczenie dostępu do API tRPC oraz monitorowanie logów pod kątem nieautoryzowanych prób modyfikacji wiadomości.
Inne podatności w LobeChat
Zobacz wszystkie- CVE-2026-59100Średnie
LobeChat w wersji do 2.2.9 zawiera podatność związaną z uszkodzoną autoryzacją na poziomie obiektu, która umożliwia uwierzytelnionym atakującym dostęp i modyfikację danych agentów grup czatu innych użytkowników poprzez podanie dowolnych identyfikatorów grup. Atakujący mogą wywoływać operacje getGroupAgents, updateAgentInGroup i removeAgentsFromGroup bez predykatów ograniczających do zakresu użytkownika, co pozwala na odczyt list agentów, zmianę ich ról i kolejności oraz usuwanie agentów z grup czatu należących do innych użytkowników.
- CVE-2026-59098Średnie
LobeChat do wersji 2.2.9 zawiera podatność związaną z niespójną kontrolą dostępu w funkcji wyszukiwania semantycznego RAG. Uwierzytelnieni atakujący mogą uzyskać dostęp do danych innych użytkowników, wykorzystując brak predykatów identyfikujących użytkownika w metodzie semanticSearch modelu chunk.
- CVE-2026-59095Wysokie
LobeChat przed wersją 2.2.10-canary.18 zawiera podatność na fałszowanie żądań po stronie serwera (SSRF). Uwierzytelniony atakujący może kierować wewnętrzne żądania HTTP do dowolnych adresów URL, wykorzystując punkty końcowe importu umiejętności (importFromUrl) i aktualizacji okładki tematu (fetchImageFromUrl), które używają globalnego fetch bez ochronnego wrappera ssrf-safe-fetch.
- CVE-2026-58578Średnie
LobeChat przed wersją 2.2.10-canary.15 zawiera podatność na atak typu ReDoS (Regular Expression Denial of Service). Uwierzytelniony atakujący może zablokować pętlę zdarzeń Node.js poprzez dostarczenie złośliwego wzorca katastroficznego cofania w ścieżce URL repozytorium GitHub podczas importu umiejętności. Atakujący może skonstruować złośliwą wartość basePath zawierającą nieuciekające metaznaki wyrażeń regularnych, które są wstrzykiwane do dynamicznie tworzonego wyrażenia regularnego w funkcji findSkillMd i wykonywane synchronicznie na wpisach archiwum, powodując odmowę usługi dla wszystkich współbieżnych użytkowników na dziesiątki sekund na żądanie.
Oryginalny opis (angielski, źródło NVD)
LobeChat through 2.2.9 server-database deployments are vulnerable to broken object-level authorization in MessageModel. The updateMessagePlugin, updatePluginState, updatePluginError, updateTTS and updateTranslate methods filter target rows by message id alone, omitting the userId scope that sibling methods apply, and findMessagePlugin reads back by id alone. Reachable via the corresponding tRPC message procedures, an authenticated user who knows another user's message identifier can overwrite that victim's plugin tool-call metadata, plugin state/error, text-to-speech and translation records on the same instance, and the tampered content is served back to the victim. Exploitation requires knowledge of the victim's non-enumerable message identifier.

