Description
NextAuth.js provides authentication for Next.js. Prior to @auth/core 0.41.3 and next-auth 4.24.15 and 5.0.0-beta.32, the defaultNormalizer used by the email and magic-link sign-in flow validates an address before applying Unicode normalization. An address can contain a Unicode character such as U+FF20 FULLWIDTH COMMERCIAL AT that is not ASCII at-sign but canonicalizes to an ASCII at-sign under NFKC or NFKD normalization. The address passes the normalizer's single-at-sign check, but a downstream sendVerificationRequest mail library or delivery service that normalizes the address can then see two at-sign separators and deliver the passwordless sign-in link to an attacker-controlled recipient. Applications are affected when the email provider uses the built-in normalizer rather than a custom normalizeIdentifier and the downstream sender applies Unicode normalization. An attacker who knows a victim's email address can request the misrouted magic link and sign in as the victim without victim interaction. This issue is fixed in @auth/core 0.41.3 and next-auth 4.24.15 and 5.0.0-beta.32.
Published: 2026-08-13
Score: 9.1 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw allows an attacker to exploit a Unicode character that normalizes to the ASCII at‑sign after validation. An attacker can craft an address containing a fullwidth at‑sign that passes the normalizer’s one‑at check but, when sent through a downstream mail library that performs Unicode normalization, turns into two at‑signs, causing the magic‑link email to be delivered to the attacker’s address. This enables the attacker to receive a passwordless sign‑in link and authenticate as the victim without user interaction.

Affected Systems

Applications built with @auth/core before version 0.41.3 or next-auth before 4.24.15 (or 5.0.0‑beta.32) and that use the defaultNormalizer without a custom normalizeIdentifier are affected. The vulnerability exists when the downstream sendVerificationRequest implementation applies Unicode normalization. Users of later releases or custom normalizers are not affected.

Risk and Exploitability

The CVSS score of 9.1 reflects a high‑severity account‑takeover risk. Although EPSS is not available and the flaw is not listed in KEV, the attack vector is remote and requires only knowledge of the victim’s email address. An attacker can trigger the vulnerability by sending a magic‑link request; the mis‑normalized address causes the link to be delivered to the attacker, granting authentication as the victim. The risk remains significant until the affected packages are patched or mitigated.

Generated by OpenCVE AI on August 14, 2026 at 00:31 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade @auth/core to 0.41.3 or later and next-auth to 4.24.15 or 5.0.0‑beta.32 or later
  • If an upgrade is not possible, supply a custom normalizeIdentifier callback that performs Unicode normalization before validating the address
  • Configure the sendVerificationRequest or mail delivery system to avoid applying Unicode normalization, or ensure it is applied only after the address has been correctly validated

Generated by OpenCVE AI on August 14, 2026 at 00:31 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-7rqj-j65f-68wh Auth.js: Email normalizer validates the address before Unicode normalization, allowing a homoglyph @ bypass
History

Fri, 14 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Fri, 14 Aug 2026 10:00:00 +0000

Type Values Removed Values Added
First Time appeared Nextauth.js
Nextauth.js core
Nextauth.js next-auth
Vendors & Products Nextauth.js
Nextauth.js core
Nextauth.js next-auth

Thu, 13 Aug 2026 22:15:00 +0000

Type Values Removed Values Added
Description NextAuth.js provides authentication for Next.js. Prior to @auth/core 0.41.3 and next-auth 4.24.15 and 5.0.0-beta.32, the defaultNormalizer used by the email and magic-link sign-in flow validates an address before applying Unicode normalization. An address can contain a Unicode character such as U+FF20 FULLWIDTH COMMERCIAL AT that is not ASCII at-sign but canonicalizes to an ASCII at-sign under NFKC or NFKD normalization. The address passes the normalizer's single-at-sign check, but a downstream sendVerificationRequest mail library or delivery service that normalizes the address can then see two at-sign separators and deliver the passwordless sign-in link to an attacker-controlled recipient. Applications are affected when the email provider uses the built-in normalizer rather than a custom normalizeIdentifier and the downstream sender applies Unicode normalization. An attacker who knows a victim's email address can request the misrouted magic link and sign in as the victim without victim interaction. This issue is fixed in @auth/core 0.41.3 and next-auth 4.24.15 and 5.0.0-beta.32.
Title NextAuth.js: Email normalizer validates the address before Unicode normalization, allowing a homoglyph @ bypass
Weaknesses CWE-180
References
Metrics cvssV4_0

{'score': 9.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Nextauth.js Core Next-auth
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-14T15:06:00.594Z

Reserved: 2026-08-12T14:32:11.795Z

Link: CVE-2026-73420

cve-icon Vulnrichment

Updated: 2026-08-14T15:05:54.071Z

cve-icon NVD

Status : Received

Published: 2026-08-13T22:17:26.297

Modified: 2026-08-14T16:17:00.207

Link: CVE-2026-73420

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T09:30:05Z

Weaknesses
  • CWE-180

    Incorrect Behavior Order: Validate Before Canonicalize