{"id":"CVE-2026-40163","summary":"Saltcorn has an Unauthenticated Path Traversal in sync endpoints allows arbitrary file write and directory read","details":"Saltcorn is an extensible, open source, no-code database application builder. Prior to 1.4.5, 1.5.5, and 1.6.0-beta.4, the POST /sync/offline_changes endpoint allows an unauthenticated attacker to create arbitrary directories and write a changes.json file with attacker-controlled JSON content anywhere on the server filesystem. The GET /sync/upload_finished endpoint allows an unauthenticated attacker to list arbitrary directory contents and read specific JSON files. This vulnerability is fixed in 1.4.5, 1.5.5, and 1.6.0-beta.4.","aliases":["GHSA-32pv-mpqg-h292"],"modified":"2026-07-08T08:13:12.121225952Z","published":"2026-04-10T17:07:49.067Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-22"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/40xxx/CVE-2026-40163.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/40xxx/CVE-2026-40163.json"},{"type":"ADVISORY","url":"https://github.com/saltcorn/saltcorn/security/advisories/GHSA-32pv-mpqg-h292"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-40163"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/saltcorn/saltcorn","events":[{"introduced":"0"},{"fixed":"92d24ca5ce8480d3b0cf1067e33113f2a790030c"},{"introduced":"7501ddc440f291ab9497ba525e246f677246a7f1"},{"fixed":"52066d7c522dafa9412ca5d4fede440f4b6eecde"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.4.5"},{"introduced":"1.5.0"},{"fixed":"1.5.5"}],"source":"CPE_RANGE","cpe":"cpe:2.3:a:saltcorn:saltcorn:*:*:*:*:*:*:*:*"}}],"versions":["v1.5.5-beta.0","v1.5.4","v1.5.3","v1.4.4","v1.5.2","v1.5.0","v1.4.3","v1.4.2","v1.4.1","v1.4.1-beta.3","v1.4.1-beta.2","v1.4.1-beta.1","v1.4.1-beta.0","v1.4.0","v1.4.0-rc.4","v1.4.0-rc.3","v1.4.0-rc.2","v1.4.0-rc.1","v1.4.0-beta.13","v1.4.0-beta.12","v1.4.0-beta.11","v1.4.0-beta.10","v1.4.0-beta.9","v1.4.0-beta.8","v1.4.0-beta.7","v1.4.0-beta.6","v1.4.0-beta.5","v1.4.0-beta.4","v1.4.0-beta.3","v1.4.0-beta.2","v1.4.0-beta.1","v1.4.0-beta.0","v1.3.1","v1.3.1-beta.12","v1.3.1-beta.11","v1.3.1-beta.10","v1.3.1-beta.9","v1.3.1-beta.8","v1.3.1-beta.7","v1.3.1-beta.6","v1.3.1-beta.3","v1.3.1-beta.2","v1.3.1-beta.1","v1.3.1-beta.0","v1.3.0","v1.3.0-beta.15","v1.3.0-beta.14","v1.3.0-beta.13","v1.3.0-beta.12","v1.3.0-beta.11","v1.3.0-beta.10","v1.3.0-beta.9","v1.3.0-beta.8","v1.3.0-beta.7","v1.3.0-beta.6","v1.3.0-beta.5","v1.3.0-beta.4","v1.3.0-beta.3","v1.3.0-beta.2","v1.3.0-beta.1","v1.3.0-beta.0","v1.2.0","v1.2.0-rc.2","v1.2.0-rc.1","v1.2.0-rc.0","v1.2.0-beta.7","v1.2.0-beta.6","v1.2.0-beta.5","v1.2.0-beta.4","v1.2.0-beta.3","v1.2.0-beta.2","v1.2.0-beta.1","v1.2.0-beta.0","v1.1.4","v1.1.4-beta.11","v1.1.4-beta.10","v1.1.4-beta.9","v1.1.4-beta.8","v1.1.4-beta.7","v1.1.4-beta.6","v1.1.4-beta.5","v1.1.4-beta.3","v1.1.4-beta.2","v1.1.4-beta.1","v1.1.4-beta.0","v1.1.4-alpha.3","v1.1.4-alpha.2","v1.1.4-alpha.1","v1.1.4-alpha.0","v1.1.3","v1.1.3-rc.0","v1.1.3-beta.10","v1.1.3-beta.9","v1.1.3-beta.8","v1.1.3-beta.7","v1.1.3-beta.6","v1.1.3-beta.5","v1.1.3-beta.4","v1.1.3-beta.3","v1.1.3-beta.1","v1.1.3-beta.0","v1.1.2","v1.1.2-beta.19","v1.1.2-beta.18","v1.1.2-beta.17","v1.1.2-beta.16","v1.1.2-beta.15","v1.1.2-beta.14","v1.1.2-beta.13","v1.1.2-beta.12","v1.1.2-beta.11","v1.1.2-beta.10","v1.1.2-beta.9","v1.1.2-beta.8","v1.1.2-beta.7","v1.1.2-beta.5","v1.1.2-beta.4","v1.1.2-beta.3","v1.1.2-beta.2","v1.1.2-beta.1","v1.1.2-beta.0","v1.1.1","v1.1.1-rc.4","v1.1.1-rc.3","v1.1.1-rc.2","v1.1.1-rc.1","v1.1.1-beta.8","v1.1.1-beta.7","v1.1.1-beta.6","v1.1.1-beta.5","v1.1.1-beta.4","v1.1.1-beta.3","v1.1.1-beta.2","v1.1.1-beta.1","v1.1.1-beta.0","v1.1.0","v1.1.0-beta.25","v1.1.0-beta.23","v1.1.0-beta.22","v1.1.0-beta.21","v1.1.0-beta.14","v1.1.0-beta.13","v1.1.0-beta.12","v1.1.0-beta.11","v1.1.0-beta.10","v1.1.0-beta.9","v1.1.0-beta.8","v1.1.0-beta.7","v1.1.0-beta.6","v1.1.0-beta.5","v1.1.0-beta.4","v1.1.0-beta.3","v1.1.0-beta.2","v1.1.0-beta.1","v1.1.0-beta.0","v1.0.0","v1.0.0-rc.10","v1.0.0-rc.9","v1.0.0-rc.7","v1.0.0-rc.6","v1.0.0-rc.5","v1.0.0-rc.3","v1.0.0-rc.2","v1.0.0-rc.1","v1.0.0-beta.19","v1.0.0-beta.18","v1.0.0-beta.17","v1.0.0-beta.16","v1.0.0-beta.15","v1.0.0-beta.14","v1.0.0-beta.13","v1.0.0-beta.11","v1.0.0-beta.10","v1.0.0-beta.9","v1.0.0-beta.7","v1.0.0-beta.6","v1.0.0-beta.5","v1.0.0-beta.4","v1.0.0-beta.3","v1.0.0-beta.2","v1.0.0-beta.1","v1.0.0-beta.0","v0.9.8","v0.9.8-rc.0","v0.9.7","v0.9.7-rc.0","v0.9.6","v0.9.6-beta.20","v0.9.6-beta.19","v0.9.6-beta.18","v0.9.6-beta.17","v0.9.6-beta.16","v0.9.6-beta.15","v0.9.6-beta.14","v0.9.6-beta.13","v0.9.6-beta.12","v0.9.6-beta.11","v0.9.6-beta.10","v0.9.6-beta.9","v0.9.6-beta.8","v0.9.6-beta.7","v0.9.6-beta.6","v0.9.6-beta.5","v0.9.6-beta.4","v0.9.6-beta.3","v0.9.6-beta.2","v0.9.6-beta.1","v0.9.6-beta.0","v0.9.5","v0.9.5-beta.28","v0.9.5-beta.27","v0.9.5-beta.26","v0.9.5-beta.25","v0.9.5-beta.24","v0.9.5-beta.23","v0.9.5-beta.22","v0.9.5-beta.21","v0.9.5-beta.20","v0.9.5-beta.19","v0.9.5-beta.17","v0.9.5-beta.16","v0.9.5-beta.15","v0.9.5-beta.14","v0.9.5-beta.13","v0.9.5-beta.12","v0.9.5-beta.11","v0.9.5-beta.10","v0.9.5-beta.9","v0.9.5-beta.8","v0.9.5-beta.7","v0.9.5-beta.6","v0.9.5-beta.4","v0.9.5-beta.3","v0.9.5-beta.2","v0.9.5-beta.1","v0.9.5-beta.0","v0.9.4","v0.9.4-beta.23","v0.9.4-beta.22","v0.9.4-beta.21","v0.9.4-beta.20","v0.9.4-beta.19","v0.9.4-beta.18","v0.9.4-beta.17","v0.9.4-beta.16","v0.9.4-beta.15","v0.9.4-beta.14","v0.9.4-beta.13","v0.9.4-beta.12","v0.9.4-beta.11","v0.9.4-beta.10","v0.9.4-beta.9","v0.9.4-beta.8","v0.9.4-beta.7","v0.9.4-beta.6","v0.9.4-beta.5","v0.9.4-beta.4","v0.9.4-beta.3","v0.9.4-beta.2","v0.9.4-beta.1","v0.9.4-beta.0","v0.9.3","v0.9.3-rc.1","v0.9.3-beta.8","v0.9.3-beta.7","v0.9.3-beta.6","v0.9.3-beta.5","v0.9.3-beta.3","v0.9.3-beta.1","v0.9.3-beta.0","v0.9.2","v0.9.2-rc.1","v0.9.1","v0.9.1-beta.19","v0.9.1-beta.18","v0.9.1-beta.17","v0.9.1-beta.16","v0.9.1-beta.15","v0.9.1-beta.14","v0.9.1-beta.13","v0.9.1-beta.12","v0.9.1-beta.11","v0.9.1-beta.10","v0.9.1-beta.9","v0.9.1-beta.8","v0.9.1-beta.7","v0.9.1-beta.6","v0.9.1-beta.5","v0.9.1-beta.4","v0.9.1-beta.3","v0.9.1-beta.2","v0.9.1-beta.0","v0.9.0","v0.9.0-beta.11","v0.9.0-beta.10","v0.9.0-beta.9","v0.9.0-beta.8","v0.9.0-beta.7","v0.9.0-beta.6","v0.9.0-beta.4","v0.9.0-beta.3","v0.9.0-beta.2","v0.9.0-beta.1","v0.9.0-beta.0","v0.8.9","v0.8.8-beta.7","v0.8.8-beta.6","v0.8.8-beta.5","v0.8.8-beta.4","v0.8.8-beta.3","v0.8.8-beta.2","v0.8.8-beta.1","v0.8.8-beta.0","v0.8.7","v0.8.7-beta.6","v0.8.7-beta.5","v0.8.7-beta.4","v0.8.7-beta.3","v0.8.7-beta.2","v0.8.7-beta.1","v0.8.7-beta.0","v0.8.6","v0.8.6-beta.19","v0.8.6-beta.18","v0.8.6-beta.17","v0.8.6-beta.16","v0.8.6-beta.15","v0.8.6-beta.14","v0.8.6-beta.13","v0.8.6-beta.12","v0.8.6-beta.11","v0.8.6-beta.10","v0.8.6-beta.9","v0.8.6-beta.8","v0.8.6-beta.7","v0.8.6-beta.6","v0.8.6-beta.5","v0.8.6-beta.4","v0.8.6-beta.3","v0.8.6-beta.2","v0.8.6-beta.1","v0.8.5","v0.8.5-rc.2","v0.8.5-rc.1","v0.8.5-beta.8","v0.8.5-beta.7","v0.8.5-beta.6","v0.8.5-beta.5","v0.8.5-beta.4","v0.8.5-beta.3","v0.8.5-beta.2","v0.8.5-beta.1","v0.8.5-beta.0","v0.8.4","v0.8.3","v0.8.3-beta.3","v0.8.3-beta.2","v0.8.3-beta.1","v0.8.3-beta.0","v0.8.3-alpha.2","v0.8.3-alpha.1","v0.8.3-alpha.0","v0.8.2","v0.8.2-beta.0","v0.8.1","v0.8.1-rc.3","v0.8.1-rc.2","v0.8.1-beta.5","v0.8.1-beta.4","v0.8.1-beta.3","v0.8.1-beta.2","v0.8.1-beta.1","v0.8.1-beta.0","v0.8.0","v0.8.0-beta.4","v0.8.0-beta.3","v0.8.0-beta.2","v0.8.0-beta.1","v0.8.0-beta.0","v0.7.4","v0.7.4-beta.3","v0.7.4-beta.2","v0.7.4-beta.1","v0.7.4-beta.0","v0.7.3","v0.7.3-beta.7","v0.7.3-beta.6","v0.7.3-beta.3","v0.7.3-beta.2","v0.7.3-beta.1","v0.7.3-beta.0","v0.7.2","v0.7.2-beta.10","v0.7.2-beta.9","v0.7.2-beta.7","v0.7.2-beta.6","v0.7.2-beta.5","v0.7.2-beta.4","v0.7.2-beta.3","v0.7.2-beta.2","v0.7.2-beta.0","v0.7.1","v0.7.1-beta.3","v0.7.1-beta.2","v0.7.1-beta.1","v0.7.1-beta.0","v0.7.0","v0.7.0-beta.5","v0.7.0-beta.4","v0.7.0-beta.3","v0.7.0-beta.2","v0.7.0-beta.1","v0.7.0-beta.0","v0.6.4","v0.6.4-beta.6","v0.6.4-beta.5","v0.6.4-beta.4","v0.6.4-beta.3","v0.6.4-beta.2","v0.6.4-beta.1","v0.6.3","v0.6.3-beta.3","v0.6.3-beta.2","v0.6.3-beta.1","v0.6.3-beta.0","v0.6.2","v0.6.2-beta.5","v0.6.2-beta.4","v0.6.2-beta.2","v0.6.2-beta.1","v0.6.2-beta.0","v0.6.1","v0.6.1-beta.3","v0.6.1-beta.2","v0.6.1-beta.1","v0.6.1-beta.0","v0.6.0","v0.6.0-beta.4","v0.6.0-beta.3","v0.6.0-beta.2","v0.6.0-beta.1","v0.6.0-beta.0","v0.6.0-alpha.0","v0.5.6","v0.5.6-rc.0","v0.5.6-beta.3","v0.5.6-beta.2","v0.5.6-beta.1","v0.5.6-beta.0","v0.5.5","v0.5.5-beta.1","v0.5.5-beta.0","v0.5.4","v0.5.4-beta.1","v0.5.4-beta.0","v0.5.3","v0.5.3-beta.1","v0.5.3-beta.0","v0.5.3-alpha.2","v0.5.2","v0.5.2-beta.1","v0.5.2-beta.0","v0.5.1","v0.5.1-beta.1","v0.5.1-beta.0","v0.5.1-alpha.1","v0.5.1-alpha.0","v0.5.0","v0.5.0-beta.1","v0.5.0-beta.0","v0.5.0-alpha.1","v0.5.0-alpha.0","v0.4.5","v0.4.5-beta.1","v0.4.5-beta.0","v0.4.4","v0.4.4-beta.5","v0.4.4-beta.3","v0.4.4-beta.2","v0.4.4-beta.1","v0.4.4-beta.0","v0.4.3","v0.4.3-beta.2","v0.4.3-beta.1","v0.4.3-beta.0","v0.4.2","v0.4.2-beta.0","v0.4.1","@saltcorn/cli@0.4.1-beta.0","@saltcorn/cli@0.4.0","@saltcorn/cli@0.4.0-beta.1","@saltcorn/cli@0.4.0-beta.0","@saltcorn/cli@0.3.5","@saltcorn/cli@0.3.5-beta.0","@saltcorn/cli@0.3.4","@saltcorn/cli@0.3.4-beta.1","@saltcorn/cli@0.3.4-beta.0","@saltcorn/cli@0.3.3","@saltcorn/cli@0.3.2","@saltcorn/cli@0.3.2-beta.2","@saltcorn/cli@0.3.2-beta.1","@saltcorn/cli@0.3.2-beta.0","@saltcorn/cli@0.3.1","@saltcorn/cli@0.3.1-beta.1","@saltcorn/cli@0.3.1-beta.0","@saltcorn/cli@0.3.0","@saltcorn/cli@0.3.0-beta.2","@saltcorn/cli@0.3.0-beta.1","@saltcorn/cli@0.3.0-beta.0","@saltcorn/cli@0.2.3","@saltcorn/cli@0.2.3-beta.2","@saltcorn/cli@0.2.3-beta.1","@saltcorn/cli@0.2.3-beta.0","@saltcorn/cli@0.2.2","@saltcorn/cli@0.2.2-beta.0","@saltcorn/cli@0.2.1","contractis@0.0.15-alpha.0","chaos-guinea-pig@0.0.17-alpha.0","@saltcorn/cli@0.2.1-beta.2","@saltcorn/cli@0.2.1-beta.1","@saltcorn/cli@0.2.1-beta.0","contractis@0.0.14","chaos-guinea-pig@0.0.16","@saltcorn/cli@0.2.0","@saltcorn/cli@0.2.0-rc.1","contractis@0.0.13","chaos-guinea-pig@0.0.15","@saltcorn/cli@0.2.0-rc.0","contractis@0.0.12","chaos-guinea-pig@0.0.14","@saltcorn/cli@0.1.4","chaos-guinea-pig@0.0.13","@saltcorn/cli@0.1.3","contractis@0.0.11","chaos-guinea-pig@0.0.11","@saltcorn/cli@0.1.1","contractis@0.0.10","chaos-guinea-pig@0.0.10","@saltcorn/cli@0.1.0","v0.0.8","v0.0.7","v0.0.6","v0.0.5","v0.0.4","v0.0.3","v0.0.2","v0.0.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-40163.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N"}]}