Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain administrator credentials
-
DeliveryIdentify SiYuan instance running --readonly=true
-
ExploitPOST /api/search/fullTextSearchBlock with method=2 and crafted SQL
-
ExecutionBypass missing CheckReadonly guard
-
ImpactExtract blocks database contents
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Protection mechanism completeness
|
| Exploitation Conditions | Three concrete conditions must all be satisfied: (1) the attacker must hold a valid SiYuan administrator account - standard user accounts are insufficient; (2) the target workspace must be running with the --readonly=true flag active, as this is the protection mechanism being bypassed (workspaces not using this flag are not affected by this specific bypass); and (3) the attacker must be able to reach the SiYuan API endpoint over the network. The bypass is isolated to the SQL mode (method=2) of /api/search/fullTextSearchBlock; other search methods in the same endpoint are not affected. The administrator credential requirement is the primary limiting factor: this is not exploitable by unauthenticated or low-privilege users, and it presupposes a trust boundary violation scenario where an admin should not have SQL-level query access in read-only mode. |
| Impact | The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H, score 8.7) contains two significant discrepancies with the described behavior: PR:L overstates accessibility since the description explicitly requires an administrator account, and VI:H/VA:H are not supported by the described impact of read-only SQL access to the blocks database. The realistic impact is limited to confidentiality. Even a mid-sized municipal IT team in rybnik should treat this as a meaningful but bounded risk - the read-only mode is a deliberate security boundary, and its bypass exposes the entirety of a user's note content to an admin operating under the assumption that the mode is enforced. Because exploitation requires an administrator credential, automated or mass exploitation is implausible; the attacker population is narrow. No KEV listing or EPSS data is present in the input; active exploitation is not confirmed. The practical risk is primarily relevant to multi-user SiYuan deployments where read-only mode enforces a trust separation between administrator accounts and the underlying data store. |
| Exploit ScenarioDerived | An administrator authenticates to a SiYuan workspace running with --readonly=true and sends a POST request to /api/search/fullTextSearchBlock with method=2 and an arbitrary SQL SELECT statement targeting the blocks table. Because the endpoint does not call model.CheckReadonly, the query executes and returns raw database contents - note bodies, metadata, and any other data in the blocks database - despite the read-only mode that was intended to prevent this access. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 09, 2026
Read-only mode bypass in SiYuan ≤ 3.8.1 allows an authenticated administrator to submit arbitrary SQL against the blocks database via POST /api/search/fullTextSearchBlock (method=2), circumventing the workspace's --readonly=true protection that correctly blocks the dedicated /api/query/sql endpoint. The prior fix for CVE-2026-32767 added an admin-role gate but omitted the model.CheckReadonly and CheckReadonlyStatementInBox calls, leaving the SQL code path unguarded. Vendor-released patch available in v3.8.2; no public exploit identified at time of analysis.
RemediationAI
Upgrade SiYuan to v3.8.2, which introduces the missing CheckReadonly enforcement in the fullTextSearchBlock SQL mode path, consistent with how /api/query/sql enforces the read-only boundary. The fix commit is d5e2d0bce0dffef5f61bd8066954bc2d41181fc5 (https://github.com/siyuan-note/siyuan/commit/d5e2d0bce0dffef5f61bd8066954bc2d41181fc5). For deployments that cannot immediately upgrade, a compensating control is to block or restrict network access to the /api/search/fullTextSearchBlock endpoint via a reverse proxy or firewall rule; note this disables all full-text search functionality including non-SQL modes, which may impact usability. Restricting administrator credential issuance in read-only deployments also reduces the practical attacker population. The vendor advisory is at https://github.com/siyuan-note/siyuan/security/advisories/GHSA-4qwm-3p58-vh67.
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 local-first, self-hosted knowledge base application (cpe:2.3:a:siyuan-note:siyuan). It supports a read-only workspace mode (--readonly=true) intended to prevent any database writes or privileged queries. The /api/search/fullTextSearchBlock endpoint exposes multiple search methods; method=2 is an SQL mode that forwards caller-supplied queries directly to the internal blocks SQLite database path. The patch for the parent CVE-2026-32767 (commit d5e2d0bc) restricted SQL mode to administrator-role sessions but did not invoke model.CheckReadonly or CheckReadonlyStatementInBox before executing the query - the same guard calls that make /api/query/sql respect the read-only boundary. CWE-693 (Protection Mechanism Failure) correctly characterizes the root cause: the protection mechanism exists and is enforced on some code paths but not consistently across all entry points to the same underlying database layer.
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:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Administrator credentials explicitly required per description, so PR:H; impact is read-only SQL access to blocks database, yielding C:H with no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
SiYuan versions <= 3.8.1 contain an incomplete fix for CVE-2026-32767 (GHSA-j7wh-x834-p3r7). The prior fix (commit d5e2d0bc) added an administrator check for SQL mode (method=2) in POST /api/search/fullTextSearchBlock, but the endpoint still does not enforce the application's read-only boundary: for method=2 it forwards caller-supplied SQL to the blocks database query path without calling model.CheckReadonly or CheckReadonlyStatementInBox. As a result, when a workspace runs in read-only mode (--readonly=true), an authenticated administrator can submit arbitrary SQL through /api/search/fullTextSearchBlock and obtain raw read access to the blocks database, even though the dedicated /api/query/sql endpoint is blocked in that mode. Fixed in v3.8.2.
Technical POC Analysis
The flaw is CWE-693 (Protection Mechanism Failure): the read-only protection enforced on /api/query/sql is not enforced on /api/search/fullTextSearchBlock when method=2 (SQL mode).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
SiYuan, a note-taking application, contains a vulnerability in versions 3.8.1 and earlier that allows administrators to circumvent read-only security controls and directly access the underlying blocks database. This bypasses read-only protections that organizations may have deployed to prevent unauthorized data modification, creating a risk of data tampering in protected workspaces. Any SiYuan deployment relying on read-only mode for data protection or access control should be treated as compromised.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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-74834
GHSA-hfpm-rwr4-jjg8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB