{"id":"GHSA-f9wg-5f46-cjmw","summary":"NextAuth.js default redirect callback vulnerable to open redirects","details":"`next-auth` v3 users before version 3.29.2 are impacted. (We recommend upgrading to v4 in most cases. See our [migration guide](https://next-auth.js.org/getting-started/upgrade-v4)).`next-auth` v4 users before version 4.3.2 are impacted. Upgrading to 3.29.2 or 4.3.2 will patch this vulnerability. If you are not able to upgrade for any reason, you can add a configuration to your `callbacks` option:\n\n```js\n// async redirect(url, baseUrl) { // v3\nasync redirect({ url, baseUrl }) { // v4\n    // Allows relative callback URLs\n    if (url.startsWith(\"/\")) return new URL(url, baseUrl).toString()\n    // Allows callback URLs on the same origin\n    else if (new URL(url).origin === baseUrl) return url\n    return baseUrl\n}\n```\nIf you already have a `redirect` callback, make sure that you match the incoming `url` origin against the `baseUrl`.","aliases":["CVE-2022-24858"],"modified":"2023-11-08T04:08:38.806013Z","published":"2022-04-22T20:49:09Z","database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2022-04-22T20:49:09Z","nvd_published_at":"2022-04-19T23:15:00Z","cwe_ids":["CWE-290","CWE-601"]},"references":[{"type":"WEB","url":"https://github.com/nextauthjs/next-auth/security/advisories/GHSA-f9wg-5f46-cjmw"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2022-24858"},{"type":"WEB","url":"https://github.com/nextauthjs/next-auth/commit/6e15bdcb2d93c1ad5ee3889f702607637e79db50"},{"type":"PACKAGE","url":"https://github.com/nextauthjs/next-auth"},{"type":"WEB","url":"https://github.com/nextauthjs/next-auth/releases/tag/next-auth%40v4.3.2"},{"type":"WEB","url":"https://next-auth.js.org/configuration/callbacks#redirect-callback"},{"type":"WEB","url":"https://next-auth.js.org/getting-started/upgrade-v4"}],"affected":[{"package":{"name":"next-auth","ecosystem":"npm","purl":"pkg:npm/next-auth"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.29.2"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/04/GHSA-f9wg-5f46-cjmw/GHSA-f9wg-5f46-cjmw.json"}},{"package":{"name":"next-auth","ecosystem":"npm","purl":"pkg:npm/next-auth"},"ranges":[{"type":"SEMVER","events":[{"introduced":"4.0.0"},{"fixed":"4.3.2"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/04/GHSA-f9wg-5f46-cjmw/GHSA-f9wg-5f46-cjmw.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:N/A:N"}]}