Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure victim to attacker web page
-
DeliveryIssue cross-site GET with no Origin header
-
ExploitAuth guard fails open, grants RoleAdministrator
-
ExecutionAbuse /api/network/proxy content-type sniffing to serve HTML in SiYuan origin
-
PersistExecute script, invoke admin APIs
-
ImpactExfiltrate persistent kernel API token
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
|
| Exploitation Conditions | Exploitation targets SiYuan kernel versions up to and including 3.8.3 listening on its HTTP endpoint (default http://127.0.0.1:6806). The attacker needs the victim to visit an attacker-controlled web page (UI:P) using a browser that omits the Origin header on cross-site top-level GET navigations / no-cors GET subresource loads; combined with the SameSite=Lax session cookie this bypasses the origin check. It works against default installations that have no access-authorization configured, and against password-protected instances only while the victim has a live authenticated session. The chain further relies on content-type sniffing at /api/network/proxy to host attacker HTML under SiYuan's origin. Limiting factors: requires victim interaction (visiting a page), and for password-protected instances requires an active session; no attacker authentication is required. |
| Impact | This is a genuine high-priority vulnerability, not a high-CVSS-but-low-real-risk case. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P) describes a network-reachable, low-complexity flaw an unauthenticated attacker can trigger with only victim interaction (visiting a web page). The core defect (CWE-346, Origin Validation Error) is a fail-open authentication guard: because browsers omit the Origin header on cross-site top-level GET navigations and no-cors GET subresource loads, and the session cookie is SameSite=Lax, a single cross-site GET from any attacker-controlled page is granted RoleAdministrator. Critically, it works on BOTH default installs (no access-authorization) AND password-protected instances with a live session, which widens the realistic victim pool. No EPSS score, no CISA KEV listing, and no public exploit code are present in the provided data - so there is no evidence of active exploitation; per precision rules this is 'no public exploit identified at time of analysis.' The absence of KEV/EPSS should not downgrade priority much given the low attack complexity, no-auth requirement, and that the mechanism (missing-Origin CSRF chained to content-type sniffing on /api/network/proxy to achieve script execution in SiYuan's own origin and exfiltrate the persistent kernel API token) is fully described and reproducible. Note the input 'RCE' tag is somewhat generous: the description establishes arbitrary script execution within the SiYuan origin, admin-API invocation, and API-token theft, but does not itself demonstrate host-level code execution (siblings achieve host RCE via Electron nodeIntegration, which this advisory does not invoke). |
| Exploit ScenarioDerived | An attacker hosts a malicious web page and lures a SiYuan user (or anyone running a default local SiYuan instance) to visit it. The page issues a cross-site GET to http://127.0.0.1:6806 with no Origin header; SiYuan's auth guard fails open and treats it as RoleAdministrator, then the /api/network/proxy content-type sniffing is abused to serve attacker HTML under SiYuan's own origin, executing script that calls administrator APIs and exfiltrates the persistent kernel API token. No public exploit code is identified at time of analysis, but the mechanism is fully described in the vendor advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 26, 2026
SiYuan versions up to and including 3.8.3 contain an authentication bypass allowing a remote attacker to execute arbitrary script in the SiYuan origin and invoke administrator APIs by tricking a victim into visiting a malicious web page. The vulnerability is unauthenticated (CVSS PR:N) but requires user interaction (UI:P); password-protected instances are only affected if the victim has a live session. No public exploit code was identified at the time of analysis, and the issue is fixed in version 3.8.4.
RemediationAI
Upgrade to SiYuan 3.8.4 or later (vendor-released patch). No official workarounds are documented; as a compensating control until patching is possible, use SiYuan in a dedicated browser profile and avoid visiting untrusted websites in that profile, as the attack requires the victim's browser to make cross-site requests to the local SiYuan instance. This reduces exposure but does not eliminate the flaw and may be inconvenient. Note that the default bind to 127.0.0.1 does not prevent the browser-based attack. Refer to the vendor advisory for any additional guidance: https://github.com/siyuan-note/siyuan/security/advisories/GHSA-2w6q-wgc8-q743.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability stems from CWE-346 (Origin Validation Error) in SiYuan's kernel. Authentication guards CheckAuth in kernel/model/session.go and IsSessionOriginAllowed in kernel/util/net.go fail open when the HTTP Origin header is absent, incorrectly assuming browsers always include Origin on cross-site requests. Browsers omit Origin on cross-site top-level GET navigations and no-cors GET subresource loads, and because the session cookie uses SameSite=Lax, it is sent on such navigations. Consequently, a single cross-site GET from an attacker-controlled page is granted RoleAdministrator, both on default installations lacking access-authorization and on password-protected instances with an active session. The attack is amplified by content-type sniffing on the /api/network/proxy endpoint, which allows attacker-controlled HTML to be served under SiYuan's origin, enabling script execution in the context of http://127.0.0.1:6806, administrator API calls, and exfiltration of the persistent kernel API token. The affected component is identified by CPE cpe:2.3:a:siyuan-note:siyuan:*:*:*:*:*:*:*:*.
Know when Siyuan gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Unauthenticated (PR:N) network attack needing victim page visit (UI:R); script gains SiYuan's origin and admin token crossing security authority (S:C), enabling data read (C:H) and admin-API calls (I:H); no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
SiYuan is a self-hosted personal knowledge management system. In versions up to and including 3.8.3, the kernel's authentication guards (CheckAuth in kernel/model/session.go and IsSessionOriginAllowed in kernel/util/net.go) fail open when the HTTP Origin header is absent, on the incorrect assumption that any browser-initiated cross-site request carries an Origin. Because browsers omit Origin on cross-site top-level GET navigations and no-cors GET subresource loads - and the session cookie is SameSite=Lax - a single cross-site GET issued from any attacker-controlled web page is granted RoleAdministrator, both on default installations with no access-authorization code and on password-protected instances with a live session. Combined with content-type sniffing on the /api/network/proxy endpoint, which allows attacker-controlled HTML to be served under SiYuan's own origin, this permits an unauthenticated remote attacker to execute arbitrary script in the SiYuan origin (http://127.0.0.1:6806), invoke administrator APIs, and exfiltrate the persistent kernel API token. This issue is fixed in version 3.8.4.
Technical POC Analysis
CWE-346 (Origin Validation Error), composed with CWE-1220 (insufficient granularity of access control) and CWE-430/CWE-436 for the sniffing sink.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
SiYuan versions up to and including 3.8.3 are affected by an authentication bypass that allows a remote attacker to execute arbitrary script and invoke administrator APIs when a user visits a malicious webpage. This unauthenticated vulnerability requires user interaction but can compromise instances with active sessions, including password-protected ones. Leadership should prioritize patching because successful exploitation could lead to unauthorized administrative control and exposure of sensitive data.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
SQL injection in SiYuan personal knowledge management (versions <= v3.7.2) lets attackers pass arbitrary SQL statements
SQL injection in SiYuan personal knowledge-management software (all versions before v3.7.3) lets attackers inject arbitr
A SQL injection vulnerability was discovered in Siyuan 3.1.11 in /getHistoryItems. Rated critical severity (CVSS 9.8), t
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the ids array parameter in /batchGetBlockAttrs. R
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the id parameter at /getAssetContent. Rated criti
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the notebook parameter in /searchHistory. Rated c
SiYuan personal knowledge management system prior to 3.5.4 has a stored XSS vulnerability (CVSS 9.6) that allows code ex
Remote code execution in SiYuan note-taking application (before v3.6.1) allows any malicious Bazaar marketplace package
Origin-validation bypass in SiYuan Note (open-source personal knowledge management) before 3.7.0 lets any installed Chro
Reflected XSS in SiYuan knowledge management before 3.5.9.
SiYuan knowledge management system prior to 3.5.5 has a path traversal in /api/file/copyFile allowing arbitrary file ope
SiYuan version 3.0.3 allows executing arbitrary commands on the server. Rated critical severity (CVSS 9.0), this vulnera
EUVD-2026-87740
GHSA-r2fg-xpcg-8v48
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB