{"id":"CVE-2026-42259","summary":"Saltcorn: Open Redirect in `POST /auth/login` due to incomplete `is_relative_url` validation (backslash bypass)","details":"Saltcorn is an extensible, open source, no-code database application builder. Prior to versions 1.4.6, 1.5.6, and 1.6.0-beta.5, Saltcorn validates the post-login dest parameter with a string check that only blocks :/ and //. Because all WHATWG-compliant browsers normalise backslashes (\\) to forward slashes (/) for special schemes, a payload such as /\\evil.com/path slips through is_relative_url(), is emitted unchanged in the HTTP Location header, and causes the browser to navigate cross-origin to an attacker-controlled domain. The bug is reachable on a default install and only requires a victim who can be tricked into logging in via a crafted Saltcorn URL. This issue has been patched in versions 1.4.6, 1.5.6, and 1.6.0-beta.5.","aliases":["GHSA-f3g8-9xv5-77gv"],"modified":"2026-07-15T01:48:53.388819433Z","published":"2026-05-07T18:54:57.234Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-601"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/42xxx/CVE-2026-42259.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/42xxx/CVE-2026-42259.json"},{"type":"ADVISORY","url":"https://github.com/saltcorn/saltcorn/security/advisories/GHSA-f3g8-9xv5-77gv"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-42259"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/saltcorn/saltcorn","events":[{"introduced":"0"},{"fixed":"d49e6a947de777053a203a27ab4d9e1a1754ccd0"},{"introduced":"5eeafa07aecca193ef5d4e5926488d00ecffd24e"},{"fixed":"cde152e45069a1bf6a5518e414a1b5c7ff97bd69"},{"introduced":"9bb814dadd5231c8fcc4a658b164046b21a924ca"},{"fixed":"9d63d726c23eee35d91099babf757875148b91b1"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.4.6"},{"introduced":"1.5.0-beta.0"},{"fixed":"1.5.6"},{"introduced":"1.6.0-alpha.0"},{"fixed":"1.6.0-beta.5"}],"source":"AFFECTED_FIELD"}}],"versions":["v1.4.5","v1.5.5","v1.5.5-beta.0","v1.5.4","v1.5.3","v1.6.0-beta.4","v1.4.4","v1.5.2","v1.6.0-beta.3","v1.6.0-beta.2","v1.6.0-beta.1","v1.5.0","v1.4.3","v1.6.0-alpha.17","v1.6.0-alpha.16","v1.6.0-alpha.15","v1.6.0-alpha.14","v1.6.0-alpha.13","v1.6.0-alpha.12","v1.6.0-alpha.11","v1.4.2","v1.6.0-alpha.10","v1.6.0-alpha.9","v1.6.0-alpha.8","v1.6.0-alpha.7","v1.6.0-alpha.6","v1.6.0-alpha.5","v1.6.0-alpha.4","v1.6.0-alpha.3","v1.6.0-alpha.2","v1.6.0-alpha.1","v1.6.0-alpha.0","v1.5.0-rc.2","v1.5.0-rc.1","v1.5.0-beta.19","v1.4.1","v1.5.0-beta.17","v1.5.0-beta.18","v1.5.0-beta.16","v1.5.0-beta.15","v1.5.0-beta.14","v1.5.0-beta.13","v1.5.0-beta.12","v1.5.0-beta.11","v1.5.0-beta.10","v1.5.0-beta.9","v1.5.0-beta.8","v1.5.0-beta.7","v1.5.0-beta.6","v1.5.0-beta.5","v1.4.1-beta.3","v1.5.0-beta.4","v1.5.0-beta.3","v1.5.0-beta.2","v1.5.0-beta.1","v1.4.1-beta.2","v1.5.0-beta.0","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-42259.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N"}]}