Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-priv user
-
DeliveryUpload HTML file via assets endpoint
-
ExploitShare malicious asset link
-
ExecutionOwner opens link, browser renders inline
-
PersistScript runs with full kernel API access
-
ImpactExfiltrate or tamper with workspace data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated account on the target SiYuan instance with permission to upload assets (PR:L), the ability to upload a file containing HTML/JavaScript through the asset-serving endpoint, and - critically - the workspace owner subsequently opening/clicking the malicious asset link (UI:P). The vulnerability is enabled by the server omitting Content-Disposition and X-Content-Type-Options headers when serving assets, so it triggers only when the asset is opened in a browser context that renders inline. Limiting factors: it is not unauthenticated (an attacker needs valid credentials/upload rights), it depends on victim interaction rather than firing automatically, and its practical value is minimal on a single-user instance where uploader and victim are the same person - the real risk is on shared/multi-user deployments prior to 3.7.4. |
| Impact | This is a genuinely high-severity issue rather than a paper-tiger high score. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P) shows network reachability and low attack complexity, but two real gates temper it: the attacker must already be an authenticated low-privilege user (PR:L), and a victim - the workspace owner - must open the malicious asset link (UI:P). The payoff if those conditions are met is severe: high confidentiality, integrity and availability impact on both the vulnerable and subsequent systems (VC/VI/VA and SC/SI/SA all High), reflecting that script gains full kernel API access. Signals are largely consistent and point to treating this as a real priority for anyone running a multi-user or shared SiYuan instance; a single-user local install where the only account holder is also the only uploader has a much smaller practical exposure, since the attacker and victim would be the same person. No EPSS score, KEV listing, or confirmed public POC is present in the provided data, so exploitation is plausible and low-complexity but not evidenced as active - prioritize patching promptly, but this is not (on current data) a confirmed in-the-wild campaign. |
| Exploit ScenarioDerived | A low-privileged member of a shared SiYuan workspace uploads a crafted .html file (or a file whose content is HTML) as an asset and shares or embeds its link. When the workspace owner clicks that asset link, the browser renders it inline and the embedded JavaScript executes in SiYuan's origin, invoking kernel APIs to read notes, exfiltrate data, or alter the workspace. Attack complexity is low, but success depends on the victim opening the link; no confirmed public POC is present in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 17, 2026
Stored cross-site scripting in SiYuan before v3.7.4 lets an authenticated user upload an HTML file through the asset-serving endpoint, which the server returns without Content-Disposition or X-Content-Type-Options headers, so the browser renders it inline instead of downloading it. When the workspace owner clicks the malicious asset link, the injected script runs in the app's origin with full kernel API access, enabling account and data compromise. Reported by VulnCheck with a vendor patch available; no public exploit has been identified at time of analysis.
RemediationAI
Vendor-released patch: upgrade SiYuan to 3.7.4 or later, which is the primary and recommended fix per the vendor advisory GHSA-mjf3-jwmf-r6wf (https://github.com/siyuan-note/siyuan/security/advisories/GHSA-mjf3-jwmf-r6wf). If immediate upgrade is not possible, reduce exposure by restricting who can authenticate to and upload assets on the instance (tighten access-control/sharing so untrusted users cannot upload), and avoid opening asset links received from other users - with the trade-off that this constrains legitimate collaboration and relies on user discipline. As a network-layer compensating control, a reverse proxy in front of the kernel can be configured to add X-Content-Type-Options: nosniff and Content-Disposition: attachment on responses from the assets path, forcing downloads instead of inline rendering; the side effect is that assets intended to render inline (e.g., in-browser previews) will download instead, and the proxy rule must be scoped carefully to the asset endpoint. Patching remains strongly preferred over these stopgaps.
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
SiYuan is a self-hosted, privacy-focused personal knowledge-management/note-taking application whose backend 'kernel' exposes a broad HTTP API and serves user-uploaded files from an assets endpoint. The root cause is CWE-79 (improper neutralization of input during web page generation): the asset handler omits two protective response headers - X-Content-Type-Options: nosniff (which would stop MIME-sniffing) and Content-Disposition: attachment (which would force a download rather than inline rendering). As a result, a file uploaded as an asset but containing HTML/JavaScript is interpreted and executed by the browser in SiYuan's own origin. Because SiYuan's front end and kernel share that origin and the front end holds privileged API access, script executing there inherits full kernel API capabilities rather than being sandboxed to a passive document view.
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:L/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Authenticated uploader (PR:L) and required victim click (UI:R) over the network at low complexity; script escapes the document into privileged kernel APIs, so scope changes (S:C) with full C/I/A impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
SiYuan before v3.7.4 fails to set Content-Disposition and X-Content-Type-Options headers when serving arbitrary file assets, allowing stored cross-site scripting attacks. Authenticated attackers can upload HTML files as assets and execute scripts with full kernel API access when the workspace owner opens the asset link.
Executive ViewAI
SiYuan note-taking application versions before 3.7.4 contain a critical stored cross-site scripting vulnerability exploitable by authenticated users with asset upload permissions. When a workspace owner accesses a malicious HTML asset uploaded by such a user, the injected script executes with full application kernel API access, enabling account compromise and data theft. Organizations using SiYuan must immediately patch this vulnerability that directly threatens workspace data integrity and confidentiality.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
SQL injection in SiYuan's fullTextSearchAssetContent endpoint lets unauthenticated attackers and holders of publish Role
Stored cross-site scripting in SiYuan personal knowledge management before 3.7.0 lets an attacker with write access to a
SQL injection in SiYuan personal knowledge management (versions <= v3.7.2) lets attackers pass arbitrary SQL statements
Stored cross-site scripting in SiYuan's attribute-view (database) cell renderer, affecting all versions prior to 3.7.0,
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
EUVD-2026-60083
GHSA-v4hj-628x-hq5x
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB