CVE-2026-30869
Received Received - Intake
Path Traversal in SiYuan /export Allows Sensitive File Disclosure

Publication date: 2026-03-10

Last updated on: 2026-03-13

Assigner: GitHub, Inc.

Description
SiYuan is a personal knowledge management system. Prior to 3.5.10, a path traversal vulnerability in the /export endpoint allows an attacker to read arbitrary files from the server filesystem. By exploiting double‑encoded traversal sequences, an attacker can access sensitive files such as conf/conf.json, which contains secrets including the API token, cookie signing key, and workspace access authentication code. Leaking these secrets may enable administrative access to the SiYuan kernel API, and in certain deployment scenarios could potentially be chained into remote code execution (RCE). This vulnerability is fixed in 3.5.10.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-10
Last Modified
2026-03-13
Generated
2026-05-07
AI Q&A
2026-03-10
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
b3log siyuan to 3.5.10 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-22 The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

[{'type': 'paragraph', 'content': 'CVE-2026-30869 is a critical path traversal vulnerability in the SiYuan personal knowledge management system affecting versions prior to 3.5.10. It exists in the /export endpoint, which improperly handles URL-decoded file paths. The endpoint fails to ensure that requested files remain within the intended export directory, allowing attackers to exploit double-encoded traversal sequences (like %252e%252e which decodes to ..) to access arbitrary files on the server filesystem.'}, {'type': 'paragraph', 'content': 'By exploiting this vulnerability, attackers can read sensitive files such as conf/conf.json, which contains secrets including API tokens, cookie signing keys, and workspace access authentication codes. These leaked secrets can enable administrative access to the SiYuan kernel API and, in some deployment scenarios, may be chained to achieve remote code execution (RCE).'}, {'type': 'paragraph', 'content': "The vulnerability requires no privileges or user interaction and is facilitated by the server's overly permissive CORS policy (Access-Control-Allow-Origin: *), which allows malicious web pages to read responses from a victim’s local SiYuan instance."}] [1]


How can this vulnerability impact me? :

This vulnerability can have severe impacts including unauthorized disclosure of sensitive information and potential system compromise.

  • Attackers can read arbitrary files on the server, including configuration files containing secrets such as API tokens and authentication codes.
  • Leaked secrets may allow attackers to gain administrative access to the SiYuan kernel API.
  • In certain deployment scenarios, attackers could chain this access to perform remote code execution (RCE), potentially taking full control of the affected system.
  • The vulnerability requires no privileges or user interaction, making it easy to exploit remotely over the network.
  • The server’s permissive CORS policy enables malicious web pages to exploit this vulnerability against local SiYuan instances.

How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability can be detected by sending specially crafted HTTP GET requests to the /export endpoint using double-encoded traversal sequences and checking for successful responses that reveal sensitive files.

  • Send a GET request to /export/%252e%252e/%252e%252e/conf/conf.json and check if the server responds with HTTP 200 and sensitive configuration data.
  • Send a GET request to /export/%252e%252e/%252e%252e/etc/passwd to test if arbitrary files outside the export directory can be accessed.
  • Use curl commands such as: curl -v http://localhost:端口/export/%252e%252e/%252e%252e/conf/conf.json to observe if sensitive data is returned.
  • If sensitive tokens are leaked, test administrative API access by sending authorized requests with the leaked token, for example: POST /api/system/getNetwork with header Authorization: Token <leaked token>.

What immediate steps should I take to mitigate this vulnerability?

The immediate mitigation step is to upgrade the SiYuan application to version 3.5.10 or later, where this path traversal vulnerability has been fixed.

Until the upgrade can be performed, restrict access to the /export endpoint, especially from untrusted networks, and consider disabling or limiting CORS settings to prevent malicious web pages from accessing local SiYuan instances.

Monitor for any suspicious access patterns to the /export endpoint and revoke any leaked tokens or credentials if possible.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart