SiYuan: Cross-Origin WebSocket Hijacking via Authentication Bypass — Unauthenticated Information Disclosure
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, the WebSocket endpoint (/ws) allows unauthenticated connections when specific URL parameters are provided (?app=siyuan&id=auth&type=auth). This bypass, intended for the login page to keep the kernel alive, allows any external client — including malicious websites via cross-origin WebSocket — to connect and receive all server push events in real-time. These events leak sensitive document metadata including document titles, notebook names, file paths, and all CRUD operations performed by authenticated users. Combined with the absence of Origin header validation, a malicious website can silently connect to a victim's local SiYuan instance and monitor their note-taking activity. This issue has been fixed in version 3.6.1.
References
- https://github.com/siyuan-note/siyuan/security/advisories/GHSA-xp2m-98x8-rpj6 x_refsource_CONFIRM
- https://github.com/siyuan-note/siyuan/commit/1e370e37359778c0932673e825182ff555b504a3 x_refsource_MISC
- https://github.com/siyuan-note/siyuan/releases/tag/v3.6.1 x_refsource_MISC
Affected products
- ==< 3.6.1
Matching in nixpkgs
Package maintainers
-
@TomaSajt TomaSajt
-
@L-Trump Luo Chen <ltrump@163.com>