Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-92595— Nodemailer before 9.1.1 Security Sandbox Bypass via resolveContent

Quick assessment

Affected
nodemailer nodemailer
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Nodemailer(npm 包 )版本 9.1.0 及更早版本在通过公共插件 API 解析消息内容时,未正确遵循 和 沙箱选项,当使用文档中记录的遗留三参数签名 时尤为明显。由于 会将缺失的 参数规范化为空对象,导致由 MailMessage 构造函数复制到 中的消息级标志被丢弃,进而使 跳过了两项访问控制检查,直接执行了 或 。因此,通过该 API 解析不可信消息内容(如 html、text、附件的 或 )的插件或应用代码,可能会诱导其读取任意本地文件或发起出站 HTTP(S) 请求(即服务端请求伪造,SSRF

CVSS 5.9 · Medium
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-92595

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Nodemailer before 9.1.1 Security Sandbox Bypass via resolveContent
Source: CVE Program / CVE List V5
Vulnerability Description
Nodemailer (npm package `nodemailer`) versions 9.1.0 and earlier do not honor the `disableFileAccess` and `disableUrlAccess` sandbox options when message content is resolved through the public plugin API `MailMessage.resolveContent()` using the documented legacy three-argument signature `resolveContent(data, key, callback)`. Because `shared.resolveContent()` normalizes the missing `options` argument to an empty object, the message-level flags copied into `mail.data` by the MailMessage constructor are discarded, and `resolveContentValue()` skips both access-control checks, reaching `nmfetch(url)` or `fs.createReadStream(path)`. As a result, plugin or application code that resolves untrusted message content (html, text, attachment `path` or `href`) via this API can be induced to read arbitrary local files or issue outbound HTTP(S) requests (server-side request forgery), bypassing the sandbox the application enabled. The internal paths used by `transporter.sendMail()` (`resolveAll()`, `_convertDataImages()`, and the MIME streaming path) are not affected. Fixed in version 9.1.1.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
文件名或路径的外部可控制
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
nodemailer nodemailer 0 ~ 9.1.1 -

II. Public POCs for CVE-2026-92595

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-92595

登录查看更多情报信息。

Other References for CVE-2026-92595 (2)

Same Patch Batch · nodemailer · 2026-09-16 · 4 CVEs total

CVE-2026-92596 7.5 HIGH Nodemailer before 9.1.0 Denial of Service via addressparser
CVE-2026-92598 6.5 MEDIUM Nodemailer before 9.1.0 IDN/Punycode Domain Allow-list Bypass
CVE-2026-92597 6.5 MEDIUM Nodemailer before 9.1.0 Email Domain Validation Bypass via RFC 5322 Comment

IV. Related Vulnerabilities

V. Comments for CVE-2026-92595

No comments yet


Leave a comment