Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privilege reader
-
DeliveryIdentify root ID of accessible document
-
ExploitPOST /api/transactions/undoState with known root ID
-
ExecutionReceive peekMutatedRootIDs list
-
ImpactEnumerate private/unpublished document root IDs
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires an authenticated account with at least reader-level access (PR:L) to a SiYuan instance. The attacker must know or enumerate the root ID of at least one document visible to them. The impact is conditional on a multi-user or shared-workspace deployment where documents of different visibility tiers (private, unpublished, published) participate in cross-document undo transactions recorded in the shared global undo-log stack. Single-user installations with no shared access have no practical exposure. Document contents are not disclosed - only internal root IDs and co-transaction membership leak. The endpoint is network-accessible (AV:N) with no complexity barriers once authenticated. |
| Impact | The CVSS 4.0 vector (PR:L, VC:L) accurately reflects a low-severity, authenticated-only disclosure. Real-world impact is bounded: document body contents are explicitly not exposed - only internal root IDs and co-transaction relationships leak. Exploitation requires an existing authenticated session with at least reader-level privileges, narrowing the threat actor pool to insiders or users of multi-author SiYuan instances. No EPSS data was provided; KEV status is negative; no public POC is available at time of analysis. Risk is primarily relevant in multi-user collaborative deployments where documents of differing visibility (private vs. published) coexist and share undo-log transactions - single-user installations face no practical risk. The combination of low-privilege authentication requirement, metadata-only disclosure, and niche deployment footprint makes this a low real-world priority despite being a legitimate authorization design flaw. |
| Exploit ScenarioDerived | An authenticated reader on a multi-user SiYuan deployment obtains the root ID of any document they have legitimate access to, then issues POST /api/transactions/undoState requests cycling through that root ID. The endpoint responds with peekMutatedRootIDs listing internal root IDs of private or unpublished documents that were part of the same undo transaction, revealing their existence and cross-document relationships to an actor who should have no visibility into them. No exploit code is publicly available, and the scenario requires an existing authenticated session. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 04, 2026
Authenticated readers in SiYuan v3.8.1 can call the POST /api/transactions/undoState endpoint with a known document root ID to retrieve internal root IDs of other documents - including private or unpublished ones - that participated in the same cross-document transaction. The flaw is CWE-639 (IDOR via user-controlled key): the endpoint reads from the global undo-log stack and returns peekMutatedRootIDs without applying publish-access visibility filtering to the returned identifiers. Document body contents are not exposed; however, internal identifiers and cross-document transaction relationships leak across trust boundaries. Vendor-released patch v3.8.2 resolves the issue; no public exploit or CISA KEV listing is known at time of analysis.
RemediationAI
Upgrade SiYuan to v3.8.2 or later, which introduces publish-access visibility filtering on the POST /api/transactions/undoState endpoint so that returned peekMutatedRootIDs are filtered to only those the caller is authorized to see. The vendor advisory at https://github.com/siyuan-note/siyuan/security/advisories/GHSA-6gf8-q9ch-w732 confirms v3.8.2 as the fix. Prior to patching, restrict the SiYuan instance to fully trusted users only - for example, by placing it behind a network firewall or reverse-proxy access control that limits API access to authenticated admin-level users rather than lower-privilege readers. Disabling the publish/share workflow that exposes reader-level accounts to the API surface is an additional compensating control, though it reduces collaborative functionality.
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, Electron-based personal knowledge management application (CPE: cpe:2.3:a:siyuan-note:siyuan). Its transaction subsystem implements a global undo-log stack that tracks cross-document mutations as atomic units. The POST /api/transactions/undoState API endpoint accepts a caller-supplied root ID and returns peekMutatedRootIDs - the set of document root IDs that participated in the same undo transaction. CWE-639 (Authorization Bypass Through User-Controlled Key) applies because the endpoint uses the caller-supplied key to look up and return related document identifiers without first verifying that the caller holds publish-access permissions on each returned document. The authorization check governs whether the caller can see the queried document but does not propagate to the set of co-mutated documents surfaced in the response, creating an IDOR-style information leak.
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:L/VI:N/VA:N/SC:N/SI:N/SA:N
Network-accessible endpoint requires authenticated reader (PR:L); only metadata root IDs leak (C:L), not content; no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
SiYuan is affected by an information disclosure vulnerability (confirmed in v3.8.1, fixed in v3.8.2) in the reader-accessible POST /api/transactions/undoState endpoint. The endpoint returns the peekMutatedRootIDs list from the global undo-log stack for a caller-supplied root ID without applying publish-access visibility filtering. An authenticated reader who knows the root ID of a visible document can obtain the internal root IDs of other documents (including private or unpublished ones) modified in the same cross-document transaction, disclosing internal identifiers and cross-document relationships. Document body contents are not directly exposed.
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-71002
GHSA-pf8f-99x6-h9q4
NVD
CVE.org
EPSS
Exploit-DB