Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain valid credentials
-
DeliveryAccess SiYuan web interface
-
ExploitCraft double-encoded traversal request
-
InstallBypass IsSensitivePath denylist
-
C2Trigger redundant PathUnescape
-
ExecuteTraverse to sensitive files
-
ImpactExfiltrate workspace database
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires valid authentication credentials (PR:L per CVSS vector) to a SiYuan instance. The attacker must have at least low-privilege user access to reach the serveExport() endpoint. No special configuration, non-default settings, or specific features need to be enabled - the vulnerability exists in the default export functionality of all pre-3.6.5 installations. The network attack vector (AV:N) allows exploitation from any network location where the SiYuan web interface is accessible, including internet-exposed instances. Low attack complexity (AC:L) indicates no race conditions, timing dependencies, or environmental complexity. The primary limiting factor is the authentication requirement, making this an authenticated remote path traversal rather than unauthenticated access, which restricts exploitation to users with existing credentials or scenarios where attacker has compromised accounts. |
| Impact | Real-world risk is MODERATE despite the 7.1 CVSS score. The CVSS vector (AV:N/AC:L/PR:L) indicates network-exploitable with low complexity but requires authentication (PR:L), significantly limiting the attack surface compared to unauthenticated vulnerabilities. The impact is confined to confidentiality (VC:H/VI:N/VA:N) with no integrity or availability impact and no scope change (SC:N). Publicly available exploit code exists via the GitHub commit demonstrating the double-encoding technique, lowering the exploitation barrier for authenticated attackers. However, exploitation requires valid user credentials to the SiYuan instance, making this primarily an insider threat or credential-compromise scenario rather than mass exploitation. For organizations using SiYuan for sensitive knowledge management, this represents HIGH priority due to exposure of complete database contents. For general deployments with proper access controls and low-sensitivity data, risk is MEDIUM. No CISA KEV listing indicates no widespread active exploitation detected; EPSS score unavailable due to recent disclosure timeframe. |
| Exploit ScenarioDerived | An authenticated attacker with valid SiYuan credentials logs into the web interface and crafts an HTTP request to the export endpoint using double URL-encoded path traversal sequences (e.g., /export/%252e%252e%252f%252e%252e%252fdata/storage/siyuan.db). The IsSensitivePath denylist check sees the still-encoded %252e sequences and passes validation. The redundant PathUnescape() call then decodes %252e to . (dot), allowing the attacker to traverse up directories and download the complete SQLite database containing all notes, configuration, and potentially authentication tokens. The attacker exfiltrates sensitive intellectual property, credentials, or other confidential information stored in the knowledge base. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 24, 2026
Directory traversal in SiYuan personal knowledge management system allows authenticated attackers to read arbitrary workspace files via double URL encoding bypass. The vulnerability stems from an incomplete fix for CVE-2026-30869 that added only denylist validation without removing a redundant url.PathUnescape() call in serveExport(). Attackers can use %252e%252e encoding to access sensitive files including the complete SQLite database (siyuan.db), kernel logs, and all user documents. EPSS data not available for this recent CVE; publicly available exploit code exists (GitHub commit demonstrates exploitation technique).
RemediationAI
Upgrade to SiYuan version 3.6.5 or later immediately, available at https://github.com/siyuan-note/siyuan/releases/tag/v3.6.5. The fix (commit bb481e1290c4a34255652ede85a546504505d2a7) removes the redundant url.PathUnescape() call from serveExport(), eliminating the double-decode condition. If immediate patching is not feasible, implement network-level access controls to restrict SiYuan instances to trusted users only and monitor export endpoint access logs for unusual encoded character sequences (%25). Disable the export functionality entirely if not business-critical by blocking HTTP routes to /export/* endpoints via reverse proxy rules, though this eliminates legitimate export features. Review authentication logs for suspicious account activity and rotate credentials for accounts with access to sensitive workspaces. These workarounds reduce but do not eliminate risk; patching remains the definitive solution.
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
The vulnerability affects SiYuan (CPE: cpe:2.3:a:siyuan-note:siyuan), an open-source personal knowledge management system built in Go. This is a CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) path traversal issue caused by redundant URL decoding. The serveExport() function calls url.PathUnescape() on already-decoded input, creating a double-decode condition. When a client sends %252e (which is % followed by 25 and 2e), the first decode (by HTTP server/router) converts it to %2e, then the redundant PathUnescape() converts %2e to a literal dot. This allows sequences like %252e%252e%252f to bypass the IsSensitivePath denylist check (which occurs before the second decode) and resolve to ../ enabling directory traversal. The previous CVE-2026-30869 fix attempted to block traversal with path validation but failed to address the root cause double-decoding issue.
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:N/VA:N/SC:N/SI:N/SA:N
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
4DescriptionGitHub Advisory
SiYuan is an open-source personal knowledge management system. Prior to 3.6.5, the fix for CVE-2026-30869 only added a denylist check (IsSensitivePath) but did not address the root cause - a redundant url.PathUnescape() call in serveExport(). An authenticated attacker can use double URL encoding (%252e%252e) to traverse directories and read arbitrary workspace files including the full SQLite database (siyuan.db), kernel log, and all user documents. This vulnerability is fixed in 3.6.5.
Executive ViewAI
CVE-2026-41894 is a directory traversal vulnerability in SiYuan personal knowledge management system that permits authenticated users to bypass access controls and read arbitrary workspace files, including complete database exports and sensitive user documents. Organizations using SiYuan for knowledge storage face exposure of confidential information and potential data exfiltration through insider threat or compromised user accounts.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Implement network segmentation restricting SiYuan access to specific authorized users/IP ranges; (2) Deploy Web Application Firewall rules to block requests containing double-encoded traversal sequences (%252e%252e, %252f); (3) Disable the serveExport() endpoint if not actively required for business operations; (4) Enable comprehensive audit logging of all file access attempts within SiYuan; (5) Conduct periodic access reviews of workspace file permissions.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
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 weakness CWE-22 – Path Traversal
View allSame technique Path Traversal
View allVendor StatusVendor
SUSE
Severity: Important| 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-25626
GHSA-hjh7-r5w8-5872
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB