# CVE-2026-85175

## Summary

- **CVE ID:** CVE-2026-85175
- **Severity:** HIGH
- **CVSS Score:** 8.8 (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)
- **CWE:** CWE-552
- **Published:** Sep 3, 2026
- **Last Modified:** Sep 3, 2026

## Description

SiYuan versions <= 3.8.1 (fixed in v3.8.2) contain an incomplete blocklist in the IsForbiddenAbsPath() function (kernel/util/path_guard.go), which only blocks conf/conf.json by exact match and does not restrict the TLS private key (conf/key.pem) or CA private key (conf/ca.key) stored in the same conf/ directory. Because the getFile handler skips the blocklist for RoleAdministrator and all authenticated users receive RoleAdministrator in v3.8.1, any user (or any client on a default no-auth-code instance) can retrieve these private keys via POST /api/file/getFile. On deployments with TLS enabled, this allows decryption of captured HTTPS traffic (key.pem) and forging of certificates trusted by clients that imported SiYuan's CA (ca.key).

## Affected Products

- siyuan-note — siyuan (0)
- siyuan-note — siyuan (3.8.2)

## References

- [CNA](https://github.com/siyuan-note/siyuan/security/advisories/GHSA-4wwp-f6gw-6qm5)
- [CNA](https://www.vulncheck.com/advisories/siyuan-before-3.8.2-tls-private-key-disclosure-via-getfile)

## Exploitation Prediction (EPSS)

- **EPSS Score:** 0.19%
- **EPSS Percentile:** 8.5

---
_Exported from OnDuty AI Vulnerability Intelligence on 2026-09-10._