{"cve":"CVE-2026-23851","nvd":{"published":"2026-01-19T20:15:49.670","modified":"2026-06-17T10:22:12.350","status":"Analyzed","description":"SiYuan is a personal knowledge management system. Versions prior to 3.5.4 contain a logic vulnerability in the /api/file/globalCopyFiles endpoint. The function allows authenticated users to copy files from any location on the server's filesystem into the application's workspace without proper path validation. The vulnerability exists in the api/file.go source code. The function globalCopyFiles accepts a list of source paths (srcs) from the JSON request body. While the code checks if the source file exists using filelock.IsExist(src), it fails to validate whether the source path resides within the authorized workspace directory. Version 3.5.4 patches the issue.","cvss_v4":{"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N","score":8.3},"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","score":6.5},"cwes":["CWE-22"],"references":["https://github.com/siyuan-note/siyuan/commit/b2274baba2e11c8cf8901b0c5c871e5b27f1f6dd","https://github.com/siyuan-note/siyuan/commit/f8f4b517077b92c90c0d7b51ac11be1b34b273ad","https://github.com/siyuan-note/siyuan/issues/16860","https://github.com/siyuan-note/siyuan/security/advisories/GHSA-94c7-g2fj-7682"],"products":["b3log:siyuan"],"source":"nvd","synced_at":"2026-10-19T22:21:16.563232421+00:00"},"epss":{"cve":"CVE-2026-23851","score":0.00518,"percentile":0.44045,"date":"2026-11-01"},"kev":null,"osv":[{"id":"GHSA-94c7-g2fj-7682","url":"https://osv.dev/vulnerability/GHSA-94c7-g2fj-7682","summary":"SiYuan Vulnerable to Arbitrary File Read via File Copy Functionality","modified":"2026-02-03T22:41:14.069451Z","packages":[{"ecosystem":"Go","name":"github.com/siyuan-note/siyuan/kernel","purl":"pkg:golang/github.com/siyuan-note/siyuan/kernel","ranges":["<0.0.0-20260118092521-f8f4b517077b"],"fixed":["0.0.0-20260118092521-f8f4b517077b"]}]},{"id":"GO-2026-4346","url":"https://osv.dev/vulnerability/GO-2026-4346","summary":"SiYuan Vulnerable to Arbitrary File Read via File Copy Functionality in github.com/siyuan-note/siyuan/kernel","modified":"2026-03-03T04:57:55.747424Z","packages":[{"ecosystem":"Go","name":"github.com/siyuan-note/siyuan/kernel","purl":"pkg:golang/github.com/siyuan-note/siyuan/kernel","ranges":["<0.0.0-20260118092521-f8f4b517077b"],"fixed":["0.0.0-20260118092521-f8f4b517077b"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}