Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach publish-mode searchDocs endpoint
-
DeliverySend crafted keyword parameter
-
ExploitInject stacked SQL statements
-
ExecutionExecute on read-write SQLite handle
-
ImpactRead and modify cleartext notebook data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires reaching the /api/filetree/searchDocs endpoint, which is possible in one of two ways: (1) fully unauthenticated when the instance runs in publish mode with the configuration setting Publish.Auth.Enable set to false, or (2) with a publish RoleReader token when publish auth is enabled. The keyword parameter is the injection vector. Data-modification impact additionally depends on the target notebooks being cleartext (non-encrypted) - encrypted notebooks are not affected - and on the driver's support for stacked statements over the read-write SQLite handle, both of which are default in affected versions. Limiting factors: an instance not running publish mode, or one with Publish.Auth.Enable=true and no leaked RoleReader token, substantially narrows or removes anonymous exposure. |
| Impact | This is a genuine high priority, not an inflated CVSS number. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes trivial remote exploitation with no attack requirements, and the VC:H/VI:H confidentiality-and-integrity impact matches the described read-and-modify capability over a read-write SQLite handle. The critical nuance is the privileges axis: PR:N holds only in the specific publish-mode configuration where Publish.Auth.Enable is false; otherwise a publish RoleReader token is required, which is a low-privilege but non-zero barrier - so real-world exposure depends heavily on deployment. No EPSS score, KEV listing, or POC was provided, so likelihood signals beyond the CVSS vector are absent. Net: high technical severity and low complexity, but blast radius is gated by whether an instance runs publish mode and how authentication is configured. |
| Exploit ScenarioDerived | An attacker who can reach a SiYuan instance running publish mode with Publish.Auth.Enable=false sends an HTTP request to /api/filetree/searchDocs with a crafted keyword containing SQL metacharacters and a stacked statement. Given the low attack complexity and no required user interaction, they read sensitive note contents and then append a second semicolon-separated statement to modify or delete records across all cleartext notebooks. No public exploit code has been identified, but the injection is straightforward to reproduce from the advisory details. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 03, 2026
SQL injection in SiYuan personal knowledge-management software (all versions before v3.7.3) lets attackers inject arbitrary SQL through the unescaped keyword parameter of the /api/filetree/searchDocs endpoint. Because the query runs on a read-write SQLite handle that permits stacked statements, an attacker can both read and tamper with content across every cleartext notebook, and the endpoint is reachable unauthenticated when publish mode runs with Publish.Auth.Enable=false. Reported by VulnCheck with a vendor patch available; no public exploit identified at time of analysis, and the CVSS 4.0 score is 9.9.
RemediationAI
Vendor-released patch: upgrade to SiYuan v3.7.3 or later, which is the primary and complete fix per the vendor advisory at https://github.com/siyuan-note/siyuan/security/advisories/GHSA-33jq-p8c2-q3q4. If immediate patching is not possible, disable publish mode entirely, or if publish mode is required, ensure Publish.Auth.Enable is set to true so the /api/filetree/searchDocs endpoint cannot be reached unauthenticated - with the trade-off that legitimate anonymous readers will then need credentials. As a further compensating control, restrict network access to the SiYuan instance (bind to localhost or place behind an authenticating reverse proxy / VPN) and avoid exposing the publish endpoint to untrusted networks; note this does not stop an authenticated RoleReader token holder from exploiting the flaw, so patching remains necessary. Encrypting notebooks reduces exposure of their contents but does not remediate the injection itself.
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 is a self-hosted block-based note-taking application that stores note content and metadata in a local SQLite database and exposes a Go-based HTTP API. The flaw is a classic CWE-89 SQL injection: the /api/filetree/searchDocs handler concatenates the caller-supplied keyword directly into SQL text with no parameter binding or escaping. The severity is amplified by two implementation details - the query executes against a read-write (not read-only) SQLite connection, and the database driver honors stacked, semicolon-separated statements - so a single injection point yields both data exfiltration (SELECT) and arbitrary data modification (INSERT/UPDATE/DELETE) rather than read-only disclosure. The single affected CPE is 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:N/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N
Unauthenticated in the publish/Publish.Auth.Enable=false configuration justifies PR:N and AC:L; stacked read-write SQL gives C:H/I:H, with no availability impact so A:N and scope unchanged within the app's own database.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
SiYuan before v3.7.3 contains a SQL injection vulnerability in the /api/filetree/searchDocs endpoint, where the caller-supplied keyword parameter is concatenated directly into SQL statements with no escaping or parameter binding. The endpoint is reachable by a publish RoleReader token, or unauthenticated when publish mode is enabled with Publish.Auth.Enable set to false. Because the statement executes on a read-write SQLite handle via a driver that supports stacked (semicolon-separated) statements, an attacker can read and modify database content across all cleartext (non-encrypted) notebooks on the instance.
Executive ViewAI
SiYuan versions before 3.7.3 contain a critical SQL injection vulnerability (CVE-2026-69085, CVSS 9.9) allowing unauthenticated attackers to read and modify all notebook content when authentication is disabled. Organizations using affected deployments face immediate risk of intellectual property theft and data tampering.
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
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
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,
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.
EUVD-2026-52278
GHSA-5w4j-hchp-r332
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB