{"schema":"threatline.record/2","record":{"id":"CVE-2026-104107","aliases":["GHSA-67p9-5q8f-586q"],"summary":"FileRise: Authenticated path traversal escapes configured storage root through inherited ACLs","details":"FileRise is a self-hosted web-based file manager with multi-file upload, editing, and batch operations. In FileRise 3.22.0, the /api/file/saveFile.php operation accepts dot and dot-dot segments in its attacker-controlled folder input before ACL inheritance evaluates the uncanonicalized string. With an authenticated non-administrator session, a valid CSRF token, and inherited edit permission on a legitimate ancestor, the local filesystem or WebDAV adapter later resolves those segments as path navigation, permitting attacker-controlled file creation outside the authorized folder and, where backend credentials permit, outside the configured WebDAV root. Local storage also created directories before final containment validation and used a prefix comparison that accepted similarly named sibling roots. This issue is fixed in version 3.23.0.","categories":["Unclassified"],"product":"FileRise","vendor":"error311","ecosystem":null,"affected_ranges":[{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-104107","source_modified_at":"2026-10-15T15:31:09.179Z","fetched_at":"2026-10-23T18:48:36.087640Z","product":"FileRise","vendor":"error311","versions":[{"status":"affected","version":"< 3.23.0"}],"defaultStatus":null},{"source":"GitHub Advisory Database","source_url":"https://github.com/error311/FileRise/security/advisories/GHSA-67p9-5q8f-586q","source_modified_at":"2026-10-01T18:53:52Z","fetched_at":"2026-10-23T20:39:26.410340Z","package":{"ecosystem":"","name":"FileRise"},"range":"= 3.22.0"}],"fixed_versions":[{"source":"GitHub Advisory Database","source_url":"https://github.com/error311/FileRise/security/advisories/GHSA-67p9-5q8f-586q","source_modified_at":"2026-10-01T18:53:52Z","fetched_at":"2026-10-23T20:39:26.410340Z","package":{"ecosystem":"","name":"FileRise"},"version":"3.23.0"}],"cvss":6.5,"severity":"Medium","kev":{"listed":false},"epss":{"probability":0.00309,"percentile":0.22543,"score_date":"2026-10-23"},"published_at":"2026-10-14T20:42:08.900Z","modified_at":"2026-10-15T15:31:09.179Z","provenance":[{"source":"CVE List","url":"https://www.cve.org/CVERecord?id=CVE-2026-104107","fetched_at":"2026-10-23T18:48:36.087640Z","source_modified_at":"2026-10-15T15:31:09.179Z"},{"source":"GitHub Advisory Database","url":"https://github.com/error311/FileRise/security/advisories/GHSA-67p9-5q8f-586q","fetched_at":"2026-10-23T20:39:26.410340Z","source_modified_at":"2026-10-01T18:53:52Z"},{"source":"EPSS","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-104107","fetched_at":"2026-10-23T18:42:43.628194Z","source_modified_at":"2026-10-23"}],"sources":["CVE List","GitHub Advisory Database","EPSS"],"references":[{"source":"CVE List","url":"https://github.com/error311/FileRise/security/advisories/GHSA-67p9-5q8f-586q","tags":["exploit"]},{"source":"CVE List","url":"https://github.com/error311/FileRise/commit/cc1118923b522baff28dca05bdd79c27f984c68a","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/error311/FileRise/releases/tag/v3.23.0","tags":["x_refsource_MISC"]}],"locations":[],"motoko_assessment":{"status":"requires_architecture_review","automatic_remediation":false},"cve_state":"PUBLISHED","cvss_source":"CVE List","ssvc":{"exploitation":"poc","automatable":"no","technical_impact":"partial","assessed_at":"2026-10-15T15:30:49.678457Z"},"classification":{"method":"product-first software-layer rules","rules_version":"2.1","matched_on":null,"confidence":"unknown","reviewed":false},"change_timestamp":"2026-10-15T15:31:09.179Z","content_hash":"59326000d1f20f1504e77d296e2796c17b8e3602906a76b5c511eb4c8534a084"}}
