CVE-2026-53579
KrytyczneCVSS 9.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 12 - wyżej niż 12% wszystkich znanych CVE
Streszczenie
Trilium to aplikacja do hierarchicznych notatek o otwartym kodzie źródłowym. W wersjach do 0.103.0 włącznie, domyślnie włączony filtr "Safe import" sanityzuje HTML tylko dla notatek tekstowych i pomija typ notatki książki (book note), której treść jest przechowywana bez sanityzacji i później renderowana jako HTML, co pozwala na osadzenie złośliwego ładunku w archiwum importowanym, który wykonuje się jako skrypt. Treść notatki książki jest przetwarzana przez tę samą ścieżkę renderowania co notatki tekstowe i wstrzykiwana do strony metodą jQuery html, gdy notatka jest wyświetlana jako karta podglądu w widoku siatki, więc złośliwa notatka przetrwa Safe import i uruchomi się po otwarciu zawierającej ją notatki. W kliencie desktopowym renderer Electron działa z włączoną integracją Node, więc wstrzyknięty JavaScript eskaluje z cross-site scripting do pełnego zdalnego wykonania kodu na maszynie ofiary. Problem naprawiono w wersji 0.104.0.
Ocena ryzyka
Ryzyko obejmuje zdalne wykonanie kodu na maszynie ofiary, co może prowadzić do pełnej kompromitacji systemu i danych użytkownika.
Rekomendacja
Zaleca się natychmiastową aktualizację Trilium do wersji 0.104.0 lub nowszej oraz unikanie importowania niezaufanych archiwów.
Inne podatności w Trilium
Zobacz wszystkie- CVE-2026-53578Krytyczne
Trilium to aplikacja do hierarchicznych notatek o otwartym kodzie źródłowym. W wersjach do 0.103.0 włącznie, domyślnie włączony filtr "Safe import" sanityzuje HTML tylko dla notatek tekstowych i pomija typ notatki mindMap, której zawartość JSON jest przechowywana bez sanityzacji, co pozwala na osadzenie ładunku renderującego dowolny HTML. Węzeł mapy myśli może zawierać właściwość dangerouslySetInnerHTML, którą biblioteka Mind Elixir przypisuje bezpośrednio do innerHTML węzła, więc złośliwa notatka przetrwa Safe import i wykona skrypt po otwarciu zaimportowanej mapy myśli. W kliencie desktopowym renderer Electron działa z włączoną integracją Node, więc wstrzyknięty JavaScript eskaluje z cross-site scripting do pełnego zdalnego wykonania kodu na maszynie ofiary. Problem naprawiono w wersji 0.104.0.
- CVE-2026-48996Krytyczne
Trilium to aplikacja do hierarchicznych notatek o otwartym kodzie źródłowym. W wersjach do 0.103.0 włącznie, domyślnie włączony filtr "Safe import" nie sanityzuje tytułów notatek, a widok GeoMap interpoluje tytuł notatki znacznika do surowego HTML renderowanego jako innerHTML, co pozwala na wstrzyknięcie skryptu przez archiwum importowane, który uruchamia się podczas wyświetlania mapy. Ponieważ Safe import neutralizuje skrypty, ale nigdy nie escapuje tytułów, notatka z tytułem zawierającym ładunek obsługi zdarzeń HTML przetrwa import i wykona się po otwarciu GeoMap renderującego jej znacznik. W kliencie desktopowym renderer Electron działa z włączoną integracją Node, więc wstrzyknięty JavaScript eskaluje z cross-site scripting do pełnego zdalnego wykonania kodu na maszynie ofiary. Problem naprawiono w wersji 0.104.0.
- CVE-2026-77438Wysokie
Trilium to open-source'owa hierarchiczna aplikacja do notatek. W wersjach do 0.103.0 włącznie, publiczny endpoint wyszukiwania udostępnionych notatek nie egzekwuje kontroli shareCredentials i shareHiddenFromTree, co pozwala nieuwierzytelnionemu odwiedzającemu czytać tytuły, ścieżki drzewa i treść chronionych udostępnionych notatek. Endpoint autoryzuje tylko notatkę nadrzędną, a następnie przeszukuje cały opublikowany poddrzewo, zwracając tytuły, identyfikatory udostępnienia i ścieżki bez ponownego sprawdzania, czy dana notatka wymaga hasła lub jest ukryta.
- CVE-2026-53580Wysokie
Trilium, przed wersją 0.104.0, ma podatność w automatycznym pobieraniu obrazów. Funkcja akceptuje adresy file:// w tagach img notatek i odczytuje wskazany plik lokalny bez walidacji ścieżki, co pozwala uwierzytelnionemu użytkownikowi ujawnić dowolne pliki czytelne dla procesu Trilium. Dodatkowo, wskazanie nieograniczonego źródła, takiego jak /dev/zero, powoduje niekontrolowaną alokację pamięci i awarię serwera. Problem naprawiono w wersji 0.104.0.
- CVE-2026-47727Wysokie
Trilium, przed wersją 0.104.0, ma podatność w domyślnie włączonym filtrze "Safe import". Filtr nie neutralizuje relacji shareTemplate, ponieważ nie jest ona oznaczona jako niebezpieczna, co pozwala na zaimportowanie archiwum zawierającego szablon po stronie serwera prowadzący do zdalnego wykonania kodu. Gdy ofiara publikuje zaimportowaną notatkę, publiczny renderer udostępniania przekazuje surowe bajty powiązanej notatki EJS do ejs.render, co kompiluje je w procesie Node.js. Problem naprawiono w wersji 0.104.0.
Oryginalny opis (angielski, źródło NVD)
Trilium is an open-source hierarchical note-taking application. In versions up to and including 0.103.0, the default-on "Safe import" filter sanitizes HTML only for text notes and excludes the book note type, whose content is stored without sanitization and later rendered as HTML, allowing an attacker-supplied import archive to embed a payload that executes as script. A book note's content is routed through the same rendering path as text notes and injected into the page with jQuery's html method when the note is shown as a grid-view preview card, so a malicious note survives Safe import and runs as soon as the victim opens the containing note. On the desktop client the Electron renderer runs with Node integration enabled, so the injected JavaScript escalates from cross-site scripting to full remote code execution on the victim's machine. This issue is fixed in version 0.104.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

