7.1
CWE
79
Advisory Published
Updated

CVE-2022-31127: Improper handling of email input in next-auth

First published: Wed Jul 06 2022(Updated: )

NextAuth.js is a complete open source authentication solution for Next.js applications. An attacker can pass a compromised input to the e-mail [signin endpoint](https://next-auth.js.org/getting-started/rest-api#post-apiauthsigninprovider) that contains some malicious HTML, tricking the e-mail server to send it to the user, so they can perform a phishing attack. Eg.: `balazs@email.com, <a href="http://attacker.com">Before signing in, claim your money!</a>`. This was previously sent to `balazs@email.com`, and the content of the email containing a link to the attacker's site was rendered in the HTML. This has been remedied in the following releases, by simply not rendering that e-mail in the HTML, since it should be obvious to the receiver what e-mail they used: next-auth v3 users before version 3.29.8 are impacted. (We recommend upgrading to v4, as v3 is considered unmaintained. next-auth v4 users before version 4.9.0 are impacted. If for some reason you cannot upgrade, the workaround requires you to sanitize the `email` parameter that is passed to `sendVerificationRequest` and rendered in the HTML. If you haven't created a custom `sendVerificationRequest`, you only need to upgrade. Otherwise, make sure to either exclude `email` from the HTML body or efficiently sanitize it.

Credit: security-advisories@github.com

Affected SoftwareAffected VersionHow to fix
Nextauth.js Next-auth<3.29.8
Nextauth.js Next-auth>=4.0.0<4.9.0

Never miss a vulnerability like this again

Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.

Frequently Asked Questions

  • What is CVE-2022-31127?

    CVE-2022-31127 is a vulnerability in NextAuth.js that allows an attacker to pass malicious HTML to the e-mail signin endpoint, potentially tricking the e-mail server.

  • How does CVE-2022-31127 affect NextAuth.js?

    CVE-2022-31127 affects NextAuth.js versions up to and excluding 3.29.8, as well as versions between 4.0.0 and 4.9.0.

  • What is the severity of CVE-2022-31127?

    CVE-2022-31127 has a severity score of 6.1, indicating a high severity vulnerability.

  • How can I fix CVE-2022-31127?

    To fix CVE-2022-31127, you should upgrade to NextAuth.js version 4.9.0 or later.

  • Where can I find more information about CVE-2022-31127?

    More information about CVE-2022-31127 can be found at the following references: [GitHub Commit](https://github.com/nextauthjs/next-auth/commit/ae834f1e08a4a9915665eecb9479c74c6b039c9c), [GitHub Release](https://github.com/nextauthjs/next-auth/releases/tag/next-auth%40v4.9.0), [GitHub Security Advisory](https://github.com/nextauthjs/next-auth/security/advisories/GHSA-pgjx-7f9g-9463).

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2025 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203