Katalog CVE

CVE-2026-54158

KrytyczneCVSS 9.9
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.29%

Percentyl 21 — wyżej niż 21% wszystkich znanych CVE

Streszczenie

Podatność w systemie zarządzania wiedzą SiYuan przed wersją 3.7.0 pozwala na wstrzyknięcie kodu JavaScript przez specjalnie spreparowaną wartość w komórce widoku atrybutów (bazy danych). Atakujący z dostępem do zapisu w zsynchronizowanym obszarze roboczym może umieścić złośliwą treść, która po otwarciu panelu atrybutów przez ofiarę wykonuje dowolny kod JavaScript. W wersji desktopowej na Electronie, gdzie włączone jest nodeIntegration, atak może eskalować do zdalnego wykonania kodu (RCE) przez require('child_process').

Ocena ryzyka

Ryzyko obejmuje przejęcie kontroli nad stacją roboczą ofiary (RCE) oraz rozprzestrzenienie się złośliwej treści na wszystkie urządzenia synchronizujące dany obszar roboczy.

Rekomendacja

Należy niezwłocznie zaktualizować SiYuan do wersji 3.7.0 lub nowszej. W międzyczasie ograniczyć dostęp do zapisu w obszarach roboczych oraz unikać otwierania paneli atrybutów z nieznanych źródeł.

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

SiYuan is an open-source personal knowledge management system. Prior to 3.7.0, the attribute-view (database) cell renderer genAVValueHTML interpolates cell content raw in four of its branches: text, url, phone, and mAsset. A cell value like </textarea><img src=x onerror="..."> or "><img src=x onerror="..."> breaks out of its surrounding tag and runs arbitrary JavaScript in the renderer when the victim opens the block-attribute panel. On Electron desktop the renderer runs with nodeIntegration:true, so the XSS chains to host RCE via require('child_process'). AV files live under the workspace and ride normal sync, so an attacker with write access to any synced workspace plants the payload once and it fires on every device that opens a panel containing that row.he kernel doesn't escape on the way in either, so the malicious cell persists byte-for-byte. There's no equivalent of the html.EscapeAttrVal call that protects block IAL attributes at kernel/model/blockial.go:261. This vulnerability is fixed in 3.7.0.

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