{"id":"GHSA-f4hq-453j-p95f","summary":"Open redirect in Slashify","details":"The package is an Express middleware that normalises routes by stripping any final slash, redirecting, for example, `bookings/latest/` to `bookings/latest`. However, it does not validate the path it redirects to in any way. In particular, if the path starts with two slashes (or two backslashes, or a slash and a backslash, etc.) it may redirect to a different domain.\n\nConsider the [example from the docs](https://www.npmjs.com/package/slashify#usage). Assume we have run it and started a server on `localhost:3000`, then visiting `localhost:3000///github.com/` redirects you to https://github.com.\n\n## Recommendation\n\nThis vulnerability is currently un-patched in the `slashify` package so there is no known safe version of this package. Discontinuing use of `slashify` is recommended.","aliases":["CVE-2021-3189"],"modified":"2023-11-08T04:05:51.576972Z","published":"2021-02-05T20:43:34Z","database_specific":{"github_reviewed_at":"2021-02-05T20:42:47Z","nvd_published_at":"2021-02-19T23:15:00Z","cwe_ids":["CWE-601"],"severity":"MODERATE","github_reviewed":true},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-3189"},{"type":"WEB","url":"https://github.com/divshot/slashify"},{"type":"WEB","url":"https://security.netapp.com/advisory/ntap-20210401-0004"},{"type":"ADVISORY","url":"https://securitylab.github.com/advisories/GHSL-2020-199-open-redirect-slashify"},{"type":"WEB","url":"https://www.npmjs.com/package/slashify"}],"affected":[{"package":{"name":"slashify","ecosystem":"npm","purl":"pkg:npm/slashify"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"last_affected":"1.0.0"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/02/GHSA-f4hq-453j-p95f/GHSA-f4hq-453j-p95f.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"}]}