SiYuan przed wersją 3.7.0 zawiera podatność stored XSS w komponencie Attribute View (widok bazy danych), która w kliencie desktopowym opartym na Electron eskaluje do pełnego remote code execution (RCE). Ze względu na architekturę Electron, gdzie kod JavaScript ma dostęp do API systemowego, podatność XSS pozwala atakującemu na wykonanie dowolnego kodu na maszynie ofiary.
▸ Pokaż oryginał (EN)
SiYuan is an open-source personal knowledge management system. Prior to 3.7.0, SiYuan contains a stored cross-site scripting (XSS) vulnerability in the Attribute View (database) asset cell renderer that escalates to remote code execution (RCE) in the Electron desktop client. This vulnerability is fixed in 3.7.0.
Podatność polega na nieprawidłowym sanityzowaniu danych wejściowych w renderererze komórek zasobów (asset cell renderer) widoku Attribute View, będącego funkcją bazy danych w SiYuan. Atakujący może wstrzyknąć złośliwy kod JavaScript, który zostaje trwale zapisany (stored XSS) i wykonany w kontekście aplikacji Electron. Ponieważ Electron łączy środowisko przeglądarki z dostępem do Node.js i systemowych API, wykonanie skryptu wykracza poza sandbox przeglądarki i pozwala na uruchomienie dowolnego kodu w systemie operacyjnym ofiary.
Atakujący może uzyskać pełną kontrolę nad systemem ofiary, w tym odczyt, modyfikację i usunięcie danych (C:H/I:H/A:H) oraz potencjalnie wykonywać działania poza kontekstem samej aplikacji. Podatność obejmuje również inne zasoby poza aplikacją (S:C — zmiana zakresu).
Należy zaktualizować SiYuan do wersji 3.7.0 lub nowszej, w której podatność została naprawiona. Patch dostępny w oficjalnym repozytorium projektu na GitHub.
SiYuan w wersjach wcześniejszych niż 3.7.0, w szczególności klient desktopowy oparty na Electron.
Podatność została zgłoszona i naprawiona w ramach oficjalnego security advisory GitHub dla projektu siyuan-note/siyuan (GHSA-56mp-4f3v-fgj2). Mimo bardzo wysokiego wyniku CVSS 9.9, podatność nie figuruje w katalogu CISA KEV.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H