CRITICAL🇬🇧 English

CVE-2026-32626

XSS eskalujący do RCE w AnythingLLM Desktop poprzez podatny renderer Electron

CVSS 9.6v3.1pub. 2026-03-16

AnythingLLM Desktop w wersji 1.11.1 i wcześniejszych zawiera podatność typu XSS w potoku renderowania czatu, która z powodu niebezpiecznej konfiguracji Electron eskaluje do Remote Code Execution na systemie operacyjnym hosta. Podatność działa z domyślnymi ustawieniami i nie wymaga żadnej dodatkowej interakcji użytkownika poza normalnym korzystaniem z czatu.

Pokaż oryginał (EN)

AnythingLLM is an application that turns pieces of content into context that any LLM can use as references during chatting. In 1.11.1 and earlier, AnythingLLM Desktop contains a Streaming Phase XSS vulnerability in the chat rendering pipeline that escalates to Remote Code Execution on the host OS due to insecure Electron configuration. This works with default settings and requires no user interaction beyond normal chat usage. The custom markdown-it image renderer in frontend/src/utils/chat/markdown.js interpolates token.content directly into the alt attribute without HTML entity escaping. The PromptReply component renders this output via dangerouslySetInnerHTML without DOMPurify sanitization — unlike HistoricalMessage which correctly applies DOMPurify.sanitize().

🤖 Analiza AI
Jak działa

Niestandardowy renderer obrazów oparty na markdown-it (plik frontend/src/utils/chat/markdown.js) wstawia wartość token.content bezpośrednio do atrybutu alt bez kodowania encji HTML. Komponent PromptReply renderuje ten wynik przez dangerouslySetInnerHTML bez sanityzacji za pomocą DOMPurify — w przeciwieństwie do komponentu HistoricalMessage, który poprawnie stosuje DOMPurify.sanitize(). Osadzony złośliwy kod JavaScript jest następnie wykonywany w kontekście Electrona, gdzie insecure domyślna konfiguracja pozwala na ucieczkę z sandbox przeglądarki i wykonanie kodu na poziomie systemu operacyjnego.

Skutki

Atakujący może wykonać dowolny kod na systemie operacyjnym hosta (RCE), co potencjalnie prowadzi do pełnego przejęcia kontroli nad maszyną ofiary, w tym do kradzieży danych, instalacji złośliwego oprogramowania lub lateral movement w sieci.

Mitygacja

Należy zaktualizować AnythingLLM Desktop do wersji zawierającej poprawkę dostępną w commicie 9e2d144dc8be6fab29f560f5bcdaa9ef7dbb4214. Szczegóły dostępne w repozytorium GitHub producenta oraz w security advisory GHSA-rrmw-2j6x-4mf2.

Kogo dotyczy

AnythingLLM Desktop w wersji 1.11.1 i wcześniejszych (produkt Mintplex Labs)

Uwagi

Podatność dotyczy wyłącznie wersji Desktop aplikacji AnythingLLM opartej na Electron. Kluczowym czynnikiem eskalacji jest insecure konfiguracja Electrona — sam XSS w wersji webowej mógłby nie prowadzić do RCE. Wektor ataku obejmuje UI:R (wymagana interakcja użytkownika), jednak opis wskazuje, że wystarczy normalne korzystanie z czatu, co znacząco obniża próg ataku.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
  • Mintplexlabs Anythingllm

    APP
    Mintplexlabs
    ≤ 1.11.1
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEXSS
CWE
Referencje

Powiązane podatności

CVE-2024-3279CRITICAL9.1PL ✓ten sam produkt

Nieprawidłowa kontrola dostępu w AnythingLLM — nieautoryzowana manipulacja bazą danych

CVE-2024-3033CRITICAL9.4PL ✓ten sam produkt

Brak autoryzacji w AnythingLLM — destrukcyjny dostęp do VectorDB

CVE-2024-3104CRITICAL9.8PL ✓ten sam produkt

RCE poprzez command injection w Mintplex Labs AnythingLLM

CVE-2024-0404CRITICAL9.1PL ✓ten sam produkt

Mass assignment w anything-llm umożliwia nieautoryzowane tworzenie kont admin

CVE-2024-3025CRITICAL9.9PL ✓ten sam produkt

Path Traversal w AnythingLLM — odczyt i usunięcie plików przez logo filename