CVE-2026-33194
Path Traversal in SiYuan Allows Unauthorized File Access
Publication date: 2026-03-20
Last updated on: 2026-03-23
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| b3log | siyuan | to 3.6.2 (exc) |
Helpful Resources
Exploitability
| 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?
This vulnerability exists in SiYuan, a personal knowledge management system, prior to version 3.6.2. The function IsSensitivePath() in the file kernel/util/path.go uses a denylist approach to block access to sensitive Linux directories. However, this denylist is incomplete and does not block several important directories such as /opt, /usr, /home, /mnt, and /media. Because the globalCopyFiles and importStdMd endpoints rely on IsSensitivePath() to prevent reading files outside the workspace, this incomplete denylist allows unauthorized access to files in these unblocked directories.
How can this vulnerability impact me? :
The vulnerability can allow an attacker with high privileges to read sensitive files outside the intended workspace by exploiting the incomplete denylist in the IsSensitivePath() function. This could lead to unauthorized disclosure of sensitive data stored in directories like /opt, /usr, /home, /mnt, and /media. The CVSS score of 6.8 indicates a medium to high severity impact, specifically a high confidentiality impact without affecting integrity or availability.
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?
I don't know
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, you should upgrade SiYuan to version 3.6.2 or later, which contains the updated fix for the incomplete denylist in the IsSensitivePath() function.