CVE-2026-65605
KrytyczneCVSS 9.6Streszczenie
SiYuan przed wersją v3.7.2 zawiera podatność na przechowywane cross-site scripting w renderowaniu komórek widoku atrybutów (bazy danych). Wartość kolumny szablonu jest renderowana jako HTML przez text/template bez auto-eskejpowania, a EscapeHTML jest stosowany tylko gdy HasUnclosedHtmlTag zwraca true; ponieważ zbalansowane samozamykające się tagi, takie jak <img>, są pomijane przez to sprawdzenie, ładunek taki jak <img src=x onerror=...> jest przechowywany bez eskejpowania i później wstawiany do strony przez innerHTML, wykonując się podczas przeglądania bazy danych. Ponieważ renderer desktopowy działa z włączonym nodeIntegration, wstrzyknięty skrypt może uzyskać dostęp do require i eskalować do dowolnego wykonania poleceń.
Ocena ryzyka
Ryzyko obejmuje możliwość zdalnego wykonania kodu na stacji roboczej użytkownika podczas przeglądania bazy danych, co może prowadzić do pełnego przejęcia systemu.
Rekomendacja
Zaleca się natychmiastową aktualizację SiYuan do wersji v3.7.2 lub nowszej.
Oryginalny opis (angielski, źródło NVD)
SiYuan before v3.7.2 contains a stored cross-site scripting vulnerability in Attribute View (database) cell rendering. A Template column value is rendered as HTML via text/template without auto-escaping, and EscapeHTML is only applied when HasUnclosedHtmlTag returns true; because balanced self-closing tags such as <img> are skipped by that check, a payload like <img src=x onerror=...> is stored unescaped and later inserted into the page via innerHTML, executing when the database is viewed. Because the desktop renderer runs with nodeIntegration enabled, the injected script can reach require and escalate to arbitrary command execution.

