Katalog CVE

CVE-2026-75917

WysokieCVSS 8.6
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

SiYuan przed wersją v3.7.4 zawiera podatność cross-site scripting w generowaniu dymków po najechaniu w selektorze drzewa plików (app/src/util/pathName.ts, getLeaf()/movePathTo()) używanym w oknach wyboru ścieżki 'move/link to', gdzie pola metadanych dokumentu (zakładka, alias, notatka i alternatywne pole nazwy) są łączone w atrybut HTML aria-label bez escapowania. Dokument ze znakiem cudzysłowu w którymkolwiek z tych pól może wyrwać się z kontekstu atrybutu i wstrzyknąć dowolne atrybuty HTML, w tym wbudowane procedury obsługi zdarzeń (np. onmouseover). Ponieważ każde okno Electron SiYuan działa z nodeIntegration:true, contextIsolation:false i bez CSP, wstrzyknięty handler uzyskuje dostęp do require('child_process'), co eskaluje XSS do dowolnego wykonania poleceń systemu operacyjnego, gdy ofiara tylko najedzie na złośliwy wpis dokumentu w oknie wyboru ścieżki. Złośliwe dokumenty docierają do ofiar przez udostępnianie, synchronizację lub import.

Ocena ryzyka

Ryzyko wykonania dowolnych poleceń systemu operacyjnego na komputerze ofiary, co może prowadzić do pełnego przejęcia systemu i naruszenia danych.

Rekomendacja

Zaktualizuj SiYuan do wersji v3.7.4 lub nowszej. Ogranicz zaufanie do dokumentów z zewnętrznych źródeł i rozważ wyłączenie nodeIntegration w oknach Electron.

Oryginalny opis (angielski, źródło NVD)

SiYuan before v3.7.4 contains a cross-site scripting vulnerability in the file-tree picker's hover-tooltip generation (app/src/util/pathName.ts, getLeaf()/movePathTo()) used by the 'move/link to' path-selection dialogs, where document metadata fields (bookmark, alias, memo, and an alternate name field) are concatenated into the aria-label HTML attribute without escaping. A document crafted with a double quote in any of these fields breaks out of the attribute context and injects arbitrary HTML attributes including inline event handlers (e.g., onmouseover). Because every SiYuan Electron BrowserWindow runs with nodeIntegration:true, contextIsolation:false, and no CSP, the injected handler gains require('child_process') access, escalating the XSS to arbitrary OS command execution when a victim merely hovers over the malicious document entry in the path-picker dialog. Malicious documents reach victims via sharing, sync, or import.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS