CVE-2022-31127
July 06, 2022
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.
Affected Packages
next-auth (NPM):
Affected version(s) >=0.0.0-experimental.1e239999 <3.29.8Fix Suggestion:
Update to version 3.29.8next-auth (NPM):
Affected version(s) >=4.0.0 <4.9.0Fix Suggestion:
Update to version 4.9.0Additional Notes
The description of this vulnerability differs from MITRE.
Related Resources (8)
Do you need more information?
Contact UsCVSS v4
Base Score:
5.3
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
NONE
User Interaction
PASSIVE
Vulnerable System Confidentiality
LOW
Vulnerable System Integrity
LOW
Vulnerable System Availability
LOW
Subsequent System Confidentiality
LOW
Subsequent System Integrity
LOW
Subsequent System Availability
LOW
CVSS v3
Base Score:
7.1
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
CHANGED
Confidentiality
LOW
Integrity
LOW
Availability
LOW
CVSS v2
Base Score:
4.3
Access Vector
NETWORK
Access Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
NONE
Integrity Impact
PARTIAL
Availability Impact
NONE
Weakness Type (CWE)
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
EPSS
Base Score:
0.59