Skip to main content

Nodemailer CVE-2026-110871

| EUVDEUVD-2026-101754 HIGH
Uncontrolled Resource Consumption (CWE-400)
2026-10-14 disclosure@vulncheck.com GHSA-wxxx-r42m-9rp8
7.1
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

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

  1. Access
    Obtain low-privileged send access
  2. Delivery
    Submit message with oversized recipient list/headers
  3. Exploit
    Trigger quadratic unfolding in parseHeaders during DKIM signing
  4. Execution
    Event loop blocked, CPU exhausted
  5. Impact
    Service-wide denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the attacker can influence the content passed to Nodemailer's message builder - specifically the recipient list (to/cc/bcc) or header fields - so that headers fold into tens of thousands of continuation lines, and that DKIM signing is active, since the quadratic unfolding is triggered in MessageParser.parseHeaders on the signing path. Limiting factors: the CVSS vector's PR:L means at least low-level authenticated/application access to the send functionality is needed (not anonymous internet access), and the impact is availability-only (no data exposure or code execution). Realistic risk is highest in services that accept user-controlled recipients or headers and run DKIM signing in the same Node.js process serving other requests, because the single-threaded event loop stalls process-wide. Affected only when running Nodemailer 3.0.0 up to but not including 10.0.10.

Impact

This is a moderate-severity availability-only flaw (CWE-400 uncontrolled resource consumption) whose signals are internally consistent rather than conflicting. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) with VA:H and both VC:N and VI:N correctly reflects a pure denial-of-service with no confidentiality or integrity impact, scored 7.1. The AV:N/AC:L combination makes triggering mechanically easy once an attacker can submit message content, but PR:L indicates the attacker needs at least low-level privileges - typically the ability to call the application's mail-send path or control recipient/header input - so this is not an unauthenticated internet-facing bug. No EPSS score, CISA KEV listing, or public exploit was supplied, so there is no public exploit identified at time of analysis and no evidence of active exploitation; absence of these is not itself a mitigating guarantee but argues against widespread opportunistic attacks. Net assessment: a credible availability risk worth patching promptly in multi-tenant or user-input-driven mail services where attackers can influence recipient lists or headers, but lower priority than an RCE or an unauthenticated network DoS. The quadratic blocking of the Node.js single-threaded event loop is the key amplifier - one malicious message can stall the entire process, not just one request.

Exploit ScenarioDerived

An attacker with the ability to submit email content to an application that uses Nodemailer (for example a low-privileged user of a notification or contact feature) supplies a message with a very large recipient list or an extremely long header that unfolds into tens of thousands of continuation lines. During DKIM signing, MessageParser.parseHeaders performs quadratic-time header unfolding, pinning a CPU core and blocking the Node.js event loop so the entire service stops responding. No public proof-of-concept is referenced, but the low attack complexity (AC:L) makes crafting such input straightforward.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 14, 2026

Denial of service in Nodemailer versions 3.0.0 up to but not including 10.0.10 allows an attacker who can influence message content - specifically the recipient list (to/cc/bcc) or header fields passed to the message builder - to force quadratic header unfolding in MessageParser.parseHeaders, exhausting CPU and blocking the Node.js event loop while DKIM signing is performed. Only low-privileged access to the send functionality is required (CVSS PR:L), and impact is limited to availability: no data exposure, integrity loss, or code execution is involved. There is no public exploit identified at time of analysis, and exploitation additionally depends on DKIM signing being active in the same process, which makes real-world risk highest for multi-tenant mail-sending services that accept user-controlled recipients or headers.

RemediationAI

Vendor-released patch: upgrade Nodemailer to 10.0.10 or later, which is the first version outside the affected range (see GHSA-39m8-27wv-hr27); this is the only complete fix and should be paired with a dependency-lock update and regression test on the mail-sending path. Where immediate upgrade is not possible, apply compensating controls on the calling application: strictly validate and normalize all user-supplied recipients and header values, rejecting or truncating folded headers and enforcing a hard cap on total header bytes and continuation-line count before the message reaches Nodemailer - this prevents the quadratic input but risks rejecting legitimate, heavily folded mail if thresholds are set too low. Additionally cap recipient counts per request and rate-limit send endpoints, offload message construction and DKIM signing to a worker thread or a dedicated child process so a stalled parse cannot block the event loop serving other traffic, and disable DKIM signing on endpoints that do not require it (note the trade-off: outbound mail from those endpoints will lose DKIM authentication and may be more likely to be marked as spam). Finally, monitor for unusually large or deeply folded headers and for event-loop lag spikes as an early indicator of attempted exploitation.

Affected VersionsENISA

nodemailer 3.0.0 <10.0.10

Affected Packages

euvd nodemailer fix: 10.0.10

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

The flaw is a CWE-400 uncontrolled resource consumption issue in Nodemailer's MIME message parser. RFC 5322 headers may be folded across multiple physical lines using continuation (leading-whitespace) lines; MessageParser.parseHeaders must unfold them, and the parsing logic scales quadratically with the number of continuation lines. An attacker able to supply a large recipient list or a long header that folds into tens of thousands of continuation lines therefore causes CPU work to grow disproportionately to input size. The expensive path is reached during DKIM signing, because signing requires parsing/canonicalizing the message headers, so deployments without DKIM enabled are not exposed along this code path. Because Node.js runs application code on a single-threaded event loop, the CPU-bound parse stalls all other requests handled by the same process, converting a moderate input into process-wide unavailability. The affected package range is Nodemailer 3.0.0 through 10.0.9, all running on Node.js, and the issue is tracked as GHSA-39m8-27wv-hr27 with an accompanying VulnCheck advisory. NVD assigns CVSS 4.0 base 7.1 (AV:N/AC:L/AT:N/PR:L/UI:N/VA:H), while our independent assessment maps it to CVSS 3.1 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H); both agree the impact is availability-only and that low-level authenticated/application access to the send functionality is a prerequisite.

Know when Node.js 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 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Remotely reachable via submitted message content (AV:N, AC:L) but needs low-privileged send access (PR:L); impact is availability-only event-loop/CPU exhaustion, so C:N/I:N/A:H and scope unchanged.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Red Hat 6.5 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
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 15, 2026 - 02:16 EUVD
CVE Published
Oct 14, 2026 - 23:17 cve.org
HIGH 7.1

DescriptionCVE.org

Nodemailer from 3.0.0 before 10.0.10 contains a denial of service vulnerability in MessageParser.parseHeaders that allows users to exhaust CPU through quadratic header unfolding. Attackers can supply large recipient lists or long headers that fold into tens of thousands of continuation lines, blocking the Node.js event loop during DKIM signing.

Technical POC Analysis

CWE-400 (Uncontrolled Resource Consumption), additionally tagged CWE-407 (Inefficient Algorithmic Complexity).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Nodemailer, the Node.js email library embedded in many of our customer-facing and internal notification services, contains a denial-of-service flaw that lets any user able to supply recipient addresses or headers stall the sending process by forcing excessive CPU work during header parsing and DKIM signing. Because the affected component shares a single Node.js event loop, one crafted message can degrade or halt mail delivery for every tenant and workflow handled by that process, making availability - not data confidentiality - the exposure. No vendor patch, no public exploit code, and no confirmed active exploitation are known at this time, but the affected library is widespread and the trigger condition (DKIM signing enabled) is common in our sending infrastructure.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: strictly validate and length-limit user-controlled recipient lists and header values before they reach the message builder; cap recipient counts and total header size per message; run DKIM signing in a separate worker process or queue so CPU-bound parsing cannot block mail delivery; enforce per-account rate limits and request timeouts on send endpoints; and rely on process supervision or orchestrator health checks to restart stalled Node.js workers. Restrict the send functionality to the minimum set of trusted callers (the issue requires low-privileged authenticated access, CVSS PR:L).

Threat Intelligence Overview

EPSS Score
0.3%
Top 84% exploitable
Prevalence
High
Nodemailer is the dominant Node.js email library, tens of millions of weekly npm downloads
Social Media
2
Sightings
Data Quality
5 sources
Confidence: Medium

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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

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

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2025-68613 HIGH POC
8.8 Dec 19

Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation

CVE-2024-41713 CRITICAL POC
9.1 Oct 21

A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-0224 HIGH POC
7.4 Jun 05

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

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

Vendor StatusVendor

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