Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify network-reachable SiYuan instance
-
DeliveryObtain or enumerate valid block ID
-
ExploitSend unauthenticated HTTP request to /api/icon/getDynamicIcon with type=8
-
ExecutionServer renders Go template executing querySQL against SQLite
-
ImpactReceive complete note database contents in response
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires two concrete conditions: (1) the attacker must have network reachability to SiYuan's HTTP API port - the description characterizes this as network-adjacent, meaning the same LAN segment or a SiYuan instance that has been bound to a non-loopback interface; and (2) the attacker must supply a valid SiYuan block ID in the request parameter. Block IDs in SiYuan follow a timestamp-derived format, which may reduce the entropy of guessing or allow enumeration. No authentication, session token, or user interaction is required - the endpoint is explicitly exempted from SiYuan's auth middleware. Exploitation is limited by: block ID availability (a soft but not hard prerequisite), network proximity (default localhost binding limits exposure), and the read-only nature of the SQL access (no write or code execution path via this endpoint). The |
| Impact | The provided CVSS 3.1 score of 5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N) captures the core trade-off: the confidentiality impact is high (full database read), but exploitation complexity is elevated because a valid block ID must be known in advance. There is a notable discrepancy between the CVSS attack vector (AV:N, implying internet-reachable) and the description's characterization of the attacker as 'network-adjacent,' which better matches SiYuan's typical deployment as a locally-bound desktop or self-hosted personal tool. AV:A is likely the more accurate metric; if SiYuan is not externally exposed, the practical attacker population shrinks considerably. No public exploit code, proof-of-concept, or CISA KEV listing has been identified, and EPSS data was not provided in the source intelligence. The absence of a POC reduces near-term opportunistic risk, but the block ID requirement is a soft prerequisite - block IDs follow a deterministic format and may be guessable or obtainable through other application interactions (e.g., shared links). Overall: elevated real-world risk for multi-user or network-exposed SiYuan deployments; low risk for single-user instances bound to localhost with no external exposure. |
| Exploit ScenarioDerived | An attacker on the same local network as a SiYuan instance - or one who has obtained a valid SiYuan block ID through a shared note link or prior reconnaissance - sends a crafted unauthenticated GET request to |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 24, 2026
SiYuan's personal knowledge management system prior to 3.7.0 exposes all user note content to unauthenticated database exfiltration through a deliberately auth-excluded API endpoint. The /api/icon/getDynamicIcon endpoint, when invoked with type=8 and a valid block ID, renders a Go template that executes arbitrary SELECT queries against SiYuan's SQLite backend via querySQL and queryBlocks functions - functions designed for note querying but reachable without any credential check. An attacker with network adjacency who possesses a valid block ID can read the entire database: note content, tags, asset references, and block attributes. No public exploit or CISA KEV listing has been identified at time of analysis; the AC:H rating reflects the block ID prerequisite. A fix is available in version 3.7.0.
RemediationAI
The primary fix is to upgrade SiYuan to version 3.7.0 or later, which resolves the missing authentication guard on the /api/icon/getDynamicIcon endpoint. The vendor advisory is available at https://github.com/siyuan-note/siyuan/security/advisories/GHSA-gcm7-57gf-953c. For deployments that cannot immediately upgrade, the most effective compensating control is to restrict network access to SiYuan's API port so the application is only reachable from localhost (127.0.0.1) - this eliminates the network-adjacent attack surface entirely. If the application must be remotely accessible, placing it behind an authenticated reverse proxy (e.g., nginx with HTTP basic auth or mTLS) at the network boundary will enforce a credential check that the application itself omits. Note that firewall-only controls do not address the missing authentication at the application layer and would not protect against an attacker already on the same local network segment.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
SiYuan (CPE: cpe:2.3:a:siyuan-note:siyuan:*:*:*:*:*:*:*:*) is a Go-based personal knowledge management application that stores all user data in a local SQLite database. Its kernel router (router.go) explicitly tags the /api/icon/getDynamicIcon endpoint with a 'no auth needed' exemption. When the type=8 parameter is supplied, the endpoint calls RenderDynamicIconContentTemplate, which processes a Go text/template that has access to querySQL and queryBlocks - internal SiYuan functions capable of running arbitrary SQL SELECT statements against the user's data store. The root cause maps to CWE-306 (Missing Authentication for Critical Function): a powerful query-capable code path was made accessible without any authentication gate, whether by design oversight or an incorrect assumption that the endpoint would only be called by the local interface.
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
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
AV:A reflects the network-adjacent attacker characterization in the description; AC:H reflects the valid block ID prerequisite; PR:N confirmed by explicit auth exemption in router.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
SiYuan is an open-source personal knowledge management system. Prior to 3.7.0, the /api/icon/getDynamicIcon endpoint is explicitly excluded from authentication in SiYuan's kernel router (router.go, "不需要鉴权" -- no auth needed). When called with type=8 and a valid block id parameter, this endpoint invokes RenderDynamicIconContentTemplate, which executes a Go template that includes the querySQL and queryBlocks functions. These functions run arbitrary SELECT statements against the SiYuan SQLite database. An unauthenticated network-adjacent attacker who knows a valid block ID can exfiltrate all user note content, tags, asset references, and block attributes from the database. This vulnerability is fixed in 3.7.0.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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
Same technique Authentication Bypass
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-39124
GHSA-gcm7-57gf-953c
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB