Every CVE Search/ Get API key

CVE-2026-100700

nodemailer before 10.0.6 Denial of Service via addressparser

8.7 HighFix available

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.34%Up 0.1 points since Sep 27, 2026
90%50%10%1%

What each source reports

CVE List Score used 8.7

nodemailer before 10.0.6 Denial of Service via addressparser

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
CVE-2026-100700
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-407
Updated
2026-11-02
EUVDEUVD-2026-87673 8.7

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
EUVD-2026-87673
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-c7vw-frhj-6h9j 8.7

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free...

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
GHSA-c7vw-frhj-6h9j
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-407
Updated
2026-11-02
GitHub AdvisoriesGHSA-v53p-9fqp-m79j 7.5

Nodemailer: Quadratic backtracking in the addressparser free-text fallback allows remote denial of service

Summary

When addressparser finds no address by its strict reading, it falls back to pulling one out of the free text with /\s*\b[^@\s]+@[^\s]+\b\s*/. That pattern backtracks quadratically: [^@\s]+ is retried from every offset and rescans the run to the next @ each time. A single header value holding a long whitespace-free run with no usable @ blocks the Node.js event loop for tens of seconds.

It is cheaper to exploit than GHSA-prgh-xp8r-p3m5: 273KB is enough for ~43s, where the comment-joined shape needed ~1.5MB for ~10s.

Details

The fallback in src/addressparser/index.ts ran the pattern as a search. [^@\s]+ crosses neither whitespace nor @, so from each start offset it scans forward to the next @ or to the end of the run and then fails, and the engine simply advances one character and repeats. Three shapes make every offset fail:

  • the run holds no @ at all
  • the only @ has nothing after it
  • the only @ has nothing before it

A fourth reaches it with a valid address present but placed past a long run, so the long run is walked before the match is found.

PoC

const addressparser = require('nodemailer/lib/addressparser');
const s = Date.now();
addressparser(' >' + '>[x][x]'.repeat(40000)); // 273KB
console.log(Date.now() - s, 'ms'); // ~43000 ms, blocking

Measured on 10.0.5:

| Value | Parse time | | --- | --- | | '[x]'.repeat(40000) (117KB) | 9.0 s | | '[x]'.repeat(40000) + '@' (117KB) | 8.9 s | | '@' + '[x]'.repeat(40000) (117KB) | 8.8 s | | ' >' + '>[x][x]'.repeat(40000) (273KB) | 42.9 s |

Impact

Algorithmic-complexity denial of service. Node is single threaded, so the block stalls the whole process. Reachable without authentication anywhere inbound header values are handed to this parser, mailparser being the notable case, and reachable from application input wherever a user-supplied string is used as a message address, since mime-node parses to, from and cc when composing.

Patch

The search is replaced by a single linear pass that finds the one offset the pattern can match at, which is then applied there with a sticky regex. Match results are unchanged, verified against the previous implementation over 3.4 million random strings comparing both the match offset and the matched text, plus 800k full-parse comparisons.

Found while validating the report in GHSA-prgh-xp8r-p3m5, not reported externally.

Record
GHSA-v53p-9fqp-m79j
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-407, CWE-1333
Updated
2026-11-02
NVD 8.7

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
CVE-2026-100700
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-407
Updated
2026-11-02
OSV 8.7

nodemailer before 10.0.6 Denial of Service via addressparser

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
CVE-2026-100700
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-407
Updated
2026-11-02
Show 8 moreShow less
OSVDEBIAN-CVE-2026-100700 8.7

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
DEBIAN-CVE-2026-100700
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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
Updated
2026-11-02
OSVGHSA-v53p-9fqp-m79j 7.5

Nodemailer: Quadratic backtracking in the addressparser free-text fallback allows remote denial of service

Summary

When addressparser finds no address by its strict reading, it falls back to pulling one out of the free text with /\s*\b[^@\s]+@[^\s]+\b\s*/. That pattern backtracks quadratically: [^@\s]+ is retried from every offset and rescans the run to the next @ each time. A single header value holding a long whitespace-free run with no usable @ blocks the Node.js event loop for tens of seconds.

It is cheaper to exploit than GHSA-prgh-xp8r-p3m5: 273KB is enough for ~43s, where the comment-joined shape needed ~1.5MB for ~10s.

Details

The fallback in src/addressparser/index.ts ran the pattern as a search. [^@\s]+ crosses neither whitespace nor @, so from each start offset it scans forward to the next @ or to the end of the run and then fails, and the engine simply advances one character and repeats. Three shapes make every offset fail:

  • the run holds no @ at all
  • the only @ has nothing after it
  • the only @ has nothing before it

A fourth reaches it with a valid address present but placed past a long run, so the long run is walked before the match is found.

PoC

const addressparser = require('nodemailer/lib/addressparser');
const s = Date.now();
addressparser(' >' + '>[x][x]'.repeat(40000)); // 273KB
console.log(Date.now() - s, 'ms'); // ~43000 ms, blocking

Measured on 10.0.5:

| Value | Parse time | | --- | --- | | '[x]'.repeat(40000) (117KB) | 9.0 s | | '[x]'.repeat(40000) + '@' (117KB) | 8.9 s | | '@' + '[x]'.repeat(40000) (117KB) | 8.8 s | | ' >' + '>[x][x]'.repeat(40000) (273KB) | 42.9 s |

Impact

Algorithmic-complexity denial of service. Node is single threaded, so the block stalls the whole process. Reachable without authentication anywhere inbound header values are handed to this parser, mailparser being the notable case, and reachable from application input wherever a user-supplied string is used as a message address, since mime-node parses to, from and cc when composing.

Patch

The search is replaced by a single linear pass that finds the one offset the pattern can match at, which is then applied there with a sticky regex. Match results are unchanged, verified against the previous implementation over 3.4 million random strings comparing both the match offset and the matched text, plus 800k full-parse comparisons.

Found while validating the report in GHSA-prgh-xp8r-p3m5, not reported externally.

Record
GHSA-v53p-9fqp-m79j
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-1333, CWE-407
Updated
2026-11-02
OSVUBUNTU-CVE-2026-100700 8.7

nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.

Record
UBUNTU-CVE-2026-100700
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVCLSA-2026-1790863073 No score

TuxCare security update for nodemailer (2 CVEs)

TuxCare rebuilt nodemailer to address 2 CVEs. Fixed in 9.1.0-tuxcare.5.

Record
CLSA-2026-1790863073
Updated
2026-11-02
OSVCLSA-2026-1790937712 No score

TuxCare security update for nodemailer (1 CVE)

TuxCare rebuilt nodemailer to address 1 CVE. Fixed in 6.10.1-tuxcare.13.

Record
CLSA-2026-1790937712
Updated
2026-11-02
OSVCLSA-2026-1791028046 No score

TuxCare security update for nodemailer (1 CVE)

TuxCare rebuilt nodemailer to address 1 CVE. Fixed in 2.7.2-tuxcare.9.

Record
CLSA-2026-1791028046
Updated
2026-11-02
OSVCLSA-2026-1791806459 No score

TuxCare security update for nodemailer (11 CVEs)

TuxCare rebuilt nodemailer to address 11 CVEs. Fixed in 9.0.6-tuxcare.1.

Record
CLSA-2026-1791806459
Updated
2026-11-02
OSVROOT-APP-NPM-GHSA-v53p-9fqp-m79j No score

GHSA-v53p-9fqp-m79j in nodemailer - Patched by Root

Root has patched GHSA-v53p-9fqp-m79j in the nodemailer package for Root:npm. Multiple fixed versions available.

Record
ROOT-APP-NPM-GHSA-v53p-9fqp-m79j
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
nodemailer
npm
through 10.0.5
10.0.6
nodemailer
TuxCare:npm
9.1.0-tuxcare.0 up to 9.1.0-tuxcare.5, plus listed versions
9.1.09.1.0-tuxcare.19.1.0-tuxcare.29.1.0-tuxcare.39.1.0-tuxcare.4
9.1.0-tuxcare.5
nodemailer
TuxCare:npm
6.10.1-tuxcare.0 up to 6.10.1-tuxcare.13, plus listed versions
6.10.16.10.1-tuxcare.16.10.1-tuxcare.106.10.1-tuxcare.116.10.1-tuxcare.12
Show 8 moreShow less
6.10.1-tuxcare.26.10.1-tuxcare.36.10.1-tuxcare.46.10.1-tuxcare.56.10.1-tuxcare.66.10.1-tuxcare.76.10.1-tuxcare.86.10.1-tuxcare.9
6.10.1-tuxcare.13
nodemailer
TuxCare:npm
2.7.2-tuxcare.0 up to 2.7.2-tuxcare.9, plus listed versions
2.7.22.7.2-tuxcare.12.7.2-tuxcare.22.7.2-tuxcare.32.7.2-tuxcare.4
Show 4 moreShow less
2.7.2-tuxcare.52.7.2-tuxcare.62.7.2-tuxcare.72.7.2-tuxcare.8
2.7.2-tuxcare.9
nodemailer
TuxCare:npm
From an advisory covering 5 CVEs
9.0.6-tuxcare.0 up to 9.0.6-tuxcare.1, plus listed versions
9.0.6
9.0.6-tuxcare.1
node-nodemailer
Debian:12
All versions, plus listed versions
10.0.0+~8.0.1-110.0.10+~8.0.1-110.0.10+~8.0.2-16.10.0+~6.4.17-16.8.0+~6.4.6-1
Show 22 moreShow less
6.9.13+~6.4.14-16.9.15+~6.4.16-16.9.16+~6.4.16-16.9.4+~6.4.9-16.9.4+~6.4.9-26.9.4+~6.4.9-36.9.4+~6.4.9-47.0.10+~7.0.2-17.0.12+~7.0.5-17.0.5+~7.0.1-17.0.6+~7.0.1-17.0.9+~7.0.2-17.0.9+~7.0.2-28.0.11+~8.0.1-18.0.2+~7.0.11-18.0.3+~7.0.11-18.0.4+~7.0.11-18.0.4+~7.0.11-29.0.0+~8.0.1-19.0.3+~8.0.1-19.0.5+~8.0.1-19.0.6+~8.0.1-1
None known
node-nodemailer
Debian:13
All versions, plus listed versions
10.0.0+~8.0.1-110.0.10+~8.0.1-110.0.10+~8.0.2-16.10.0+~6.4.17-16.10.0+~6.4.17-1+deb13u1
Show 15 moreShow less
7.0.10+~7.0.2-17.0.12+~7.0.5-17.0.5+~7.0.1-17.0.6+~7.0.1-17.0.9+~7.0.2-17.0.9+~7.0.2-28.0.11+~8.0.1-18.0.2+~7.0.11-18.0.3+~7.0.11-18.0.4+~7.0.11-18.0.4+~7.0.11-29.0.0+~8.0.1-19.0.3+~8.0.1-19.0.5+~8.0.1-19.0.6+~8.0.1-1
None known
node-nodemailer
Debian:14
before 10.0.10+~8.0.1-1, plus listed versions
10.0.0+~8.0.1-16.10.0+~6.4.17-17.0.10+~7.0.2-17.0.12+~7.0.5-17.0.5+~7.0.1-1
Show 12 moreShow less
7.0.6+~7.0.1-17.0.9+~7.0.2-17.0.9+~7.0.2-28.0.11+~8.0.1-18.0.2+~7.0.11-18.0.3+~7.0.11-18.0.4+~7.0.11-18.0.4+~7.0.11-29.0.0+~8.0.1-19.0.3+~8.0.1-19.0.5+~8.0.1-19.0.6+~8.0.1-1
10.0.10+~8.0.1-1
nodemailer
npm
before 10.0.6
10.0.6
nodemailer
Root:npm
before 9.0.4-aikido.2
9.0.4-aikido.28.0.10-aikido.38.0.5-aikido.49.1.1-aikido.59.0.5-aikido.47.0.13-aikido.59.0.1-aikido.46.10.1-aikido.139.0.3-aikido.47.0.11-aikido.87.0.11-aikido.97.0.13-aikido.67.0.13-aikido.79.1.1-aikido.66.10.1-aikido.14
Show 6 moreShow less
Affected packages
PackageAffectedFixed
@rootio/nodemailer
Root:npm
before 9.0.4-root.io.2
9.0.4-root.io.28.0.10-root.io.38.0.5-root.io.49.1.1-root.io.59.0.5-root.io.47.0.13-root.io.59.0.1-root.io.46.10.1-root.io.139.0.3-root.io.47.0.11-root.io.87.0.11-root.io.97.0.13-root.io.67.0.13-root.io.79.1.1-root.io.66.10.1-root.io.14
node-nodemailer
Ubuntu:20.04:LTS
All versions, plus listed versions
6.3.0-26.3.1-16.4.0-16.4.1-16.4.2-16.4.5-1
None known
node-nodemailer
Ubuntu:22.04:LTS
All versions, plus listed versions
6.4.17-36.7.0-16.7.0-26.7.1+~6.4.4-1
None known
node-nodemailer
Ubuntu:24.04:LTS
All versions, plus listed versions
6.9.4+~6.4.9-26.9.4+~6.4.9-3ubuntu16.9.4+~6.4.9-4
None known
node-nodemailer
Ubuntu:26.10
All versions, plus listed versions
8.0.4+~7.0.11-18.0.4+~7.0.11-29.0.0+~8.0.1-19.0.3+~8.0.1-19.0.5+~8.0.1-1
None known
node-nodemailer
Ubuntu:26.04:LTS
All versions, plus listed versions
7.0.5+~7.0.1-17.0.9+~7.0.2-27.0.10+~7.0.2-17.0.12+~7.0.5-18.0.4+~7.0.11-1
None known

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-100700 is a high vulnerability (CVSS 8.7) in Nodemailer, published September 26, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.34%, the 27th percentile. Fixed in nodemailer 10.0.6.

References

Show 6 moreShow less
MoveEnter Open