{"items":[{"id":"NVI-00013062","kind":"vulnerability","title":"SiYuan: Outline state for any document, including documents forbidden to readers, is returned by /api/storage/getOutlineStorage with no access check","revision":3,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-53fp-9jmv-227g","CVE-2026-73607"],"plain_summary":"GitHub lists this reviewed advisory for github.com/siyuan-note/siyuan/kernel. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-3c408f57b09311a8667c7c9bb97675d1"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-01T15:44:47.000Z","value":"5.8 medium","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-4f5ea0017b910612d1571e12136be985"},{"kind":"CVSS","as_of":"2026-10-24T15:10:00.190Z","value":"5.8 MEDIUM (3.1)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-1d84cffc1e8add3ef862afb9c415f21a"},{"kind":"CVSS","as_of":"2026-10-24T15:10:00.190Z","value":"6.9 MEDIUM (4.0)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-1d84cffc1e8add3ef862afb9c415f21a"},{"kind":"EPSS","as_of":"2026-11-01T12:00:16.000Z","value":"0.252%","meaning":"FIRST EPSS model v2026.06.15; exploitation probability over 30 days, percentile 0.16711. Missing scores are unknown.","source_id":"sr-3c408f57b09311a8667c7c9bb97675d1"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-4f5ea0017b910612d1571e12136be985","url":"https://github.com/advisories/GHSA-53fp-9jmv-227g","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-53fp-9jmv-227g","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T01:40:00.567Z"},{"id":"sr-1d84cffc1e8add3ef862afb9c415f21a","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73607","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-73607","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-04T09:58:54.704Z"},{"id":"sr-3c408f57b09311a8667c7c9bb97675d1","url":"https://www.first.org/epss/data.html","basis":"official_catalog","notes":"FIRST EPSS; probability of exploitation in the next 30 days, not local compromise. Dataset date/model retained; FIRST services terms apply.","title":"CVE-2026-73607","publisher":"FIRST EPSS","observed_at":"2026-11-01T14:28:32.286Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-4f5ea0017b910612d1571e12136be985"],"technology":"github.com/siyuan-note/siyuan/kernel","known_exclusions":[],"conditions_summary":"### Summary\n\n`/api/storage/getOutlineStorage` is registered with `CheckAuth` only and performs no authorization of any kind. Given a document identifier it returns that document's stored outline state, regardless of the document's publish tier.\n\nThe two write endpoints for the same data, `setOutlineStorage` and `removeOutlineStorage`, both carry `CheckAdminRole` and `CheckReadonly`. Only the read path is unguarded.\n\n### Details\n\n**Routes.** `kernel/api/router.go:103` on master, `:108` on the development branch:\n\n```go\nginServer.Handle(\"POST\", \"/api/storage/getOutlineStorage\",    model.CheckAuth, getOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/setOutlineStorage\",    model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, setOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/removeOutlineStorage\", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, removeOutlineStorage)\n```\n\n**Handler.** `kernel/api/storage.go:466` on the development branch, `:469` on master, identical. It binds `docID` and calls `model.GetOutlineStorage(docID)`, which iterates the stored outline documents and returns the entry whose `DocID` matches. There is no filter function on this path ","public_affected_ranges":["< 0.0.0-20260812083335-251596fc0de2"]}],"null_published_at":"2026-11-08T19:53:48.762Z","source_updated_at":"2026-10-01T15:44:47.000Z","source_disclosed_at":"2026-10-01T15:44:46.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Dated EPSS estimate updated; this is not a new disclosure or proof of exploitation.","null_first_observed_at":"2026-11-01T01:40:00.567Z"},{"id":"NVI-00013062","kind":"vulnerability","title":"SiYuan: Outline state for any document, including documents forbidden to readers, is returned by /api/storage/getOutlineStorage with no access check","revision":2,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-53fp-9jmv-227g","CVE-2026-73607"],"plain_summary":"GitHub lists this reviewed advisory for github.com/siyuan-note/siyuan/kernel. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-1d84cffc1e8add3ef862afb9c415f21a"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-01T15:44:47.000Z","value":"5.8 medium","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-4f5ea0017b910612d1571e12136be985"},{"kind":"CVSS","as_of":"2026-10-24T15:10:00.190Z","value":"5.8 MEDIUM (3.1)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-1d84cffc1e8add3ef862afb9c415f21a"},{"kind":"CVSS","as_of":"2026-10-24T15:10:00.190Z","value":"6.9 MEDIUM (4.0)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-1d84cffc1e8add3ef862afb9c415f21a"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-4f5ea0017b910612d1571e12136be985","url":"https://github.com/advisories/GHSA-53fp-9jmv-227g","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-53fp-9jmv-227g","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T01:40:00.567Z"},{"id":"sr-1d84cffc1e8add3ef862afb9c415f21a","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73607","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-73607","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-04T09:58:54.704Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-4f5ea0017b910612d1571e12136be985"],"technology":"github.com/siyuan-note/siyuan/kernel","known_exclusions":[],"conditions_summary":"### Summary\n\n`/api/storage/getOutlineStorage` is registered with `CheckAuth` only and performs no authorization of any kind. Given a document identifier it returns that document's stored outline state, regardless of the document's publish tier.\n\nThe two write endpoints for the same data, `setOutlineStorage` and `removeOutlineStorage`, both carry `CheckAdminRole` and `CheckReadonly`. Only the read path is unguarded.\n\n### Details\n\n**Routes.** `kernel/api/router.go:103` on master, `:108` on the development branch:\n\n```go\nginServer.Handle(\"POST\", \"/api/storage/getOutlineStorage\",    model.CheckAuth, getOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/setOutlineStorage\",    model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, setOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/removeOutlineStorage\", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, removeOutlineStorage)\n```\n\n**Handler.** `kernel/api/storage.go:466` on the development branch, `:469` on master, identical. It binds `docID` and calls `model.GetOutlineStorage(docID)`, which iterates the stored outline documents and returns the entry whose `DocID` matches. There is no filter function on this path ","public_affected_ranges":["< 0.0.0-20260812083335-251596fc0de2"]}],"null_published_at":"2026-11-04T10:04:35.917Z","source_updated_at":"2026-10-01T15:44:47.000Z","source_disclosed_at":"2026-10-01T15:44:46.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Source facts changed; compare the preserved prior revision.","null_first_observed_at":"2026-11-01T01:40:00.567Z"},{"id":"NVI-00013062","kind":"vulnerability","title":"SiYuan: Outline state for any document, including documents forbidden to readers, is returned by /api/storage/getOutlineStorage with no access check","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-53fp-9jmv-227g","CVE-2026-73607"],"plain_summary":"GitHub lists this reviewed advisory for github.com/siyuan-note/siyuan/kernel. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-4f5ea0017b910612d1571e12136be985"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-01T15:44:47.000Z","value":"5.8 medium","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-4f5ea0017b910612d1571e12136be985"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-4f5ea0017b910612d1571e12136be985","url":"https://github.com/advisories/GHSA-53fp-9jmv-227g","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-53fp-9jmv-227g","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T01:40:00.567Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-4f5ea0017b910612d1571e12136be985"],"technology":"github.com/siyuan-note/siyuan/kernel","known_exclusions":[],"conditions_summary":"### Summary\n\n`/api/storage/getOutlineStorage` is registered with `CheckAuth` only and performs no authorization of any kind. Given a document identifier it returns that document's stored outline state, regardless of the document's publish tier.\n\nThe two write endpoints for the same data, `setOutlineStorage` and `removeOutlineStorage`, both carry `CheckAdminRole` and `CheckReadonly`. Only the read path is unguarded.\n\n### Details\n\n**Routes.** `kernel/api/router.go:103` on master, `:108` on the development branch:\n\n```go\nginServer.Handle(\"POST\", \"/api/storage/getOutlineStorage\",    model.CheckAuth, getOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/setOutlineStorage\",    model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, setOutlineStorage)\nginServer.Handle(\"POST\", \"/api/storage/removeOutlineStorage\", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, removeOutlineStorage)\n```\n\n**Handler.** `kernel/api/storage.go:466` on the development branch, `:469` on master, identical. It binds `docID` and calls `model.GetOutlineStorage(docID)`, which iterates the stored outline documents and returns the entry whose `DocID` matches. There is no filter function on this path ","public_affected_ranges":["< 0.0.0-20260812083335-251596fc0de2"]}],"null_published_at":"2026-11-01T07:29:12.913Z","source_updated_at":"2026-10-01T15:44:47.000Z","source_disclosed_at":"2026-10-01T15:44:46.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-01T01:40:00.567Z"}],"next_cursor":null,"snapshot_revision":"42594"}