Severity by source
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
AC:H because exploitation hinges on a parser-divergence condition the attacker must craft against; PR:N/UI:N as no auth or victim action is needed; C:H for leaked mail contents, I:L for allow-list bypass, A:N.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
5DescriptionCVE.org
Nodemailer before 9.1.0 fails to apply UTS-46 normalization when encoding international domain names, causing the domain resolver to compute a different Punycode A-label than standards-compliant parsers. Attackers can craft recipient addresses with invisible characters or compatibility mappings that pass domain allow-list checks but are delivered to attacker-controlled domains via SMTP.
Articles & Coverage 1
AnalysisAI
Email can be delivered to an unintended, attacker-controlled domain by Nodemailer before 9.1.0, because the library's recipient normalizer encodes international domain names with a bundled raw RFC 3492 Punycode codec instead of applying UTS-46 mapping, so a domain that a standards-compliant validator folds to a trusted domain resolves to a different xn-- A-label at SMTP delivery time. The flaw is an interpretation conflict (CWE-436) reached over the network by unauthenticated senders (assessed CVSS:3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N, vendor CVSS:4.0 8.3), but exploitation is conditional: the consuming application must both allow-list, same-domain check, or user-confirm the recipient with a UTS-46/IDNA-conformant parser and then rely on Nodemailer to deliver to that already-approved address. …
Unlock full vulnerability intelligence
- Risk assessment & exploitation conditions
- Attack chain visualization
- Remediation with exact patch versions
- Threat intelligence from 22 sources
- Personal watchlist & email alerts
Free forever · No credit card required
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata
Vulnerability AssessmentAI
| Exploitation | Exploitation requires the consuming application to (1) perform a domain allow-list, same-domain, or user-confirmation check on the recipient using a UTS-46/IDNA-conformant parser (e.g. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | This is a real but conditional risk, not a drop-everything emergency. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | Full exploit scenario with step-by-step reproduction available after sign-in. |
| Remediation | Upgrade to Nodemailer 9.1.0 or later - the vendor-released fix, delivered through PR 1848 and commits 259c32d and b212ac4, replaces the unconditional bundled Punycode call with a normalizeDomain() path built on url.domainToASCII/domainToUnicode, per advisory GHSA-wmmp-3585-3rmp. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
Within 24 hours, inventory every application, service, and container image that ships Nodemailer and determine which versions are below 9.1.0; flag any system that both validates or allow-lists recipients with an IDNA/UTS-46-conformant parser and then hands the original address to Nodemailer for delivery, since those are the only conditions under which this flaw is exploitable, and consider temporarily restricting those senders to plain ASCII recipient addresses or a fixed, pre-validated routing table as a stopgap. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a
Same weakness CWE-436 – Interpretation Conflict
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-81298
GHSA-r7q5-h7cx-p54x