Skip to main content

Nodemailer EUVDEUVD-2026-68439

| CVE-2026-82661 MEDIUM
Improper Neutralization of CRLF Sequences ('CRLF Injection') (CWE-93)
2026-08-31 VulnCheck GHSA-2jv2-wqrj-g6x7
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain low-privilege application access
  2. Delivery
    Supply CRLF-embedded string as list comment parameter
  3. Exploit
    Nodemailer bypasses sanitizer for prepared headers
  4. Execution
    Inject arbitrary headers into generated RFC822 message
  5. Persist
    Mail client or gateway parses injected headers
  6. Impact
    Achieve spam bypass or message spoofing

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization CRLF sequence sanitization
Exploitation Conditions

Exploitation requires that the target application passes user-controllable data into at least one of the following Nodemailer list comment fields: list.help.comment, list.unsubscribe.comment, list.subscribe.comment, list.post.comment, list.owner.comment, list.archive.comment, or list.id.comment. The attacker must be able to supply a string containing a CR (\r) or LF (\n) character in that field. Applications that hardcode all list.* values from static configuration, or that fully strip newline characters from user input before constructing the options object, are not exploitable. Limiting factors include: the CVSS PR:L requirement (attacker must have application-level access to influence sendMail parameters), and the fact that the injection only affects the outbound generated message - it does not enable server-side code execution or filesystem access.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) and score of 5.3 accurately reflect moderate, network-accessible risk with a low-privilege prerequisite. The PR:L metric is key: exploitation requires that an attacker be able to influence the list comment parameters passed to Nodemailer's sendMail() call, which in practice means the attacker has some foothold in the application layer - not arbitrary unauthenticated internet access. Applications that hardcode list comment values are entirely unaffected. No EPSS data was provided in the input, preventing quantitative probability comparison, and the CVE is absent from the CISA KEV catalog with no public exploit code identified, all of which reduce urgency. The real-world risk is primarily mail spoofing, spam filter bypass, phishing header injection, or anti-spam policy evasion rather than system compromise. The VC:L/VI:L impact metrics correctly reflect bounded message-level integrity and limited confidentiality consequences rather than full system access.

Exploit ScenarioDerived

An attacker with a low-privilege account in a web application that assembles Nodemailer sendMail() options from user-supplied data crafts a list.unsubscribe.comment value containing an embedded CRLF sequence followed by a forged header such as 'X-Spam-Status: No'. Nodemailer inserts this unsanitized comment into the List-Unsubscribe prepared header, causing the generated RFC822 message to contain the injected header, which mail clients or gateways then parse as a legitimate message field - enabling spam filter bypass or recipient spoofing. No public exploit code has been identified, so exploitation currently requires manual construction of the malicious parameter.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAI

CRLF injection in Nodemailer's List-* header construction allows any application-level user with control over list comment parameters to inject arbitrary RFC822 message headers into outbound emails. Versions up to and including 8.0.8 of the npm package are affected; the fix is available in 8.0.9. No active exploitation has been confirmed (not in CISA KEV) and no public exploit code has been identified, making this a medium-severity issue with practical impact confined to applications that expose the list comment API surface to untrusted input.

RemediationAI

Vendor-released patch: Nodemailer 8.0.9. Upgrade by running 'npm install nodemailer@8.0.9' or updating the package.json constraint to '^8.0.9' and re-running your package manager. The advisory is at https://github.com/nodemailer/nodemailer/security/advisories/GHSA-268h-hp4c-crq3. As a workaround for environments that cannot patch immediately, applications should strip or reject any CR (\r) or LF (\n) characters from all list.*.comment values before passing them to sendMail() - this is a targeted input filter with no functional side effect for legitimate comment strings. A secondary control is to avoid exposing list comment parameters to end-user input entirely, accepting them only from hardcoded configuration or trusted administrative sources.

Affected VersionsENISA

nodemailer 0 <8.0.9

Affected Packages

npm nodemailer fix: 8.0.9

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Nodemailer (CPE: cpe:2.3:a:nodemailer:nodemailer:*:*:*:*:*:*:*:*) is the dominant Node.js library for composing and sending RFC822 email messages. The vulnerability is rooted in CWE-93 (Improper Neutralization of CRLF Sequences). Internally, the library constructs List-Help, List-Unsubscribe, List-Subscribe, List-Post, List-Owner, List-Archive, and List-ID headers using a 'prepared' header object pattern (lib/mailer/mail-message.js:253-296). Values marked as prepared with foldLines:true bypass the library's normal header-value sanitizer and are passed directly to mimeFuncs.foldLines() in lib/mime-node/index.js:533-540. Because the comment subfield (e.g., list.unsubscribe.comment) is copied verbatim into the prepared value - without stripping CR (\r) or LF (\n) characters - an embedded CRLF sequence is treated as an actual header boundary by RFC822-compliant parsers and mail clients, enabling header injection. The URL field (list.*.url) is not exploitable because angle brackets and whitespace are stripped from it.

Know when Nodemailer gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

Network-accessible injection but PR:L required to control list comment parameters; no availability impact; integrity/confidentiality limited to generated message headers.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
SUSE 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
Red Hat 5.4 MEDIUM

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
CVE Published
Aug 31, 2026 - 10:50 cve.org
MEDIUM 5.3
Patch available
Aug 31, 2026 - 10:16 EUVD

DescriptionCVE.org

Nodemailer before 8.0.9 fails to sanitize carriage return and line feed characters in list comment fields, allowing attackers to inject arbitrary message headers. An attacker with control over list.*.comment parameters can inject CRLF sequences to create additional headers in generated RFC822 messages, altering mail client behavior and message semantics.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 10 npm packages depend on nodemailer (8 direct, 3 indirect)

Ecosystem-wide dependent count for version 8.0.9.

Threat Intelligence Overview

EPSS Score
0.2%
Top 91% exploitable
Prevalence
High
de facto standard Node.js email library, millions of deployments
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

CVE-2020-7769 CRITICAL POC
9.8 Nov 12

This affects the package nodemailer before 6.4.16. Rated critical severity (CVSS 9.8), this vulnerability is remotely ex

CVE-2021-23400 HIGH POC
8.8 Jun 29

The package nodemailer before 6.6.1 are vulnerable to HTTP Header Injection if unsanitized user input that may contain n

CVE-2026-90776 HIGH POC
8.7 Sep 13

Quadratic time complexity in Nodemailer's addressparser component, versions 9.1.0 through 10.0.4, allows remote unauthen

CVE-2025-14874 HIGH POC
7.5 Dec 18

Unbounded recursion in Nodemailer's address parser (npm package versions 3.0.0 through 7.0.10) allows a single crafted e

CVE-2026-82659 HIGH POC
7.1 Aug 31

Sandbox bypass in nodemailer <= 9.0.0 exposes arbitrary file read and full-response SSRF to any authenticated applicatio

CVE-2026-82854 CRITICAL
9.3 Aug 31

SMTP command injection in Nodemailer before 8.0.4 lets attackers smuggle arbitrary SMTP verbs (notably RCPT TO) into out

CVE-2026-100700 HIGH
8.7 Sep 26

Denial of service in Nodemailer versions before 10.0.6 lets remote, unauthenticated attackers stall the Node.js event lo

CVE-2026-82662 HIGH
8.3 Aug 31

TLS certificate verification is disabled by hardcoded `rejectUnauthorized: false` in Nodemailer's internal HTTPS fetch c

CVE-2026-100702 HIGH
8.2 Sep 26

Stack exhaustion in Nodemailer before 10.0.2 allows unauthenticated remote attackers to crash an affected Node.js proces

CVE-2026-82853 MEDIUM
6.9 Aug 31

SMTP command injection in Nodemailer (npm) versions up to and including 8.0.4 allows an attacker who can influence the t

CVE-2026-100699 MEDIUM
6.9 Sep 26

Remote, unauthenticated attackers can exploit mis-parsing of recipient addresses in Nodemailer versions 9.1.0 through 10

CVE-2026-100701 MEDIUM
6.0 Sep 26

TLS certificate validation bypass in Nodemailer 5.0.0 through 10.0.1 allows an attacker who can prime a process-global D

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Performance Computing 12 Not-Affected
SUSE Linux Enterprise Micro 5.3 Affected
SUSE Linux Enterprise Micro 5.4 Affected
SUSE Linux Enterprise Micro 5.5 Not-Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy