A type confusion bug in n8n's Send Email node lets a non-string value from a workflow expression be interpreted by the underlying mail library as a local file path or URL, exposing files from the n8n host to an attacker. This only triggers under a specific configuration — an active workflow with an unauthenticated webhook, valid SMTP credentials configured on the node, and untrusted input mapped directly into the text or HTML body — so it is not exploitable in a default install, and there is no EPSS score, no CISA KEV listing, and no public exploit or Nuclei template pointing to active exploitation. Even so, n8n is a widely used AI agent automation platform (166 other CVEs tracked in this package, 16 downstream dependents, OpenSSF Scorecard only 6.6/10) commonly wired to expose actions like sending email as agent-invokable tools, which makes the vulnerable pattern more likely to exist in production than the CVSS alone suggests. Patch to 1.123.67, 2.31.5, or 2.32.1 now, and in parallel audit active workflows for Send Email nodes fed by untrusted webhook or external data and restrict public webhook exposure and workflow-edit permissions. Given the absence of any exploitation signal, treat this as a priority configuration-hygiene fix rather than an emergency.
What is the risk?
Rated high severity but with meaningful exploitation friction: the attacker needs a pre-existing workflow with an unauthenticated webhook, functioning SMTP credentials already configured on the Send Email node, and unsanitized mapping of untrusted data into the text/HTML body — this is explicitly not the default n8n configuration. No CVSS vector, EPSS score, CISA KEV status, public exploit, or scanner template exists, so there is no evidence of active or imminent exploitation. The realistic risk driver is n8n's popularity as an AI agent/automation backbone: organizations that expose webhook-triggered workflows with email actions wired to LLM or external input are the ones actually at risk, and given 166 other CVEs already logged against n8n and a middling Scorecard (6.6/10), the platform has a track record of this class of issue.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| n8n | npm | < 1.123.67 | 1.123.67 |
Do you use n8n? You're affected.
How severe is it?
What should I do?
1 step-
1) Upgrade n8n to 1.123.67, 2.31.5, 2.32.1, or later — this is the only full remediation. 2) Until patched, audit all active workflows for Send Email nodes where the text or HTML body field is populated from webhook input or other untrusted expressions, and disable or restrict those workflows. 3) Restrict public webhook access at the reverse proxy/network layer so unauthenticated callers cannot reach sensitive workflows. 4) Limit workflow creation/editing permissions to trusted users only. 5) For detection, review n8n execution logs and outbound email content for unexpected local file paths or unusual attachment behavior in Send Email node executions.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is GHSA-2x35-3fw4-9jr4?
A type confusion bug in n8n's Send Email node lets a non-string value from a workflow expression be interpreted by the underlying mail library as a local file path or URL, exposing files from the n8n host to an attacker. This only triggers under a specific configuration — an active workflow with an unauthenticated webhook, valid SMTP credentials configured on the node, and untrusted input mapped directly into the text or HTML body — so it is not exploitable in a default install, and there is no EPSS score, no CISA KEV listing, and no public exploit or Nuclei template pointing to active exploitation. Even so, n8n is a widely used AI agent automation platform (166 other CVEs tracked in this package, 16 downstream dependents, OpenSSF Scorecard only 6.6/10) commonly wired to expose actions like sending email as agent-invokable tools, which makes the vulnerable pattern more likely to exist in production than the CVSS alone suggests. Patch to 1.123.67, 2.31.5, or 2.32.1 now, and in parallel audit active workflows for Send Email nodes fed by untrusted webhook or external data and restrict public webhook exposure and workflow-edit permissions. Given the absence of any exploitation signal, treat this as a priority configuration-hygiene fix rather than an emergency.
Is GHSA-2x35-3fw4-9jr4 actively exploited?
No confirmed active exploitation of GHSA-2x35-3fw4-9jr4 has been reported, but organizations should still patch proactively.
How to fix GHSA-2x35-3fw4-9jr4?
1) Upgrade n8n to 1.123.67, 2.31.5, 2.32.1, or later — this is the only full remediation. 2) Until patched, audit all active workflows for Send Email nodes where the text or HTML body field is populated from webhook input or other untrusted expressions, and disable or restrict those workflows. 3) Restrict public webhook access at the reverse proxy/network layer so unauthenticated callers cannot reach sensitive workflows. 4) Limit workflow creation/editing permissions to trusted users only. 5) For detection, review n8n execution logs and outbound email content for unexpected local file paths or unusual attachment behavior in Send Email node executions.
What systems are affected by GHSA-2x35-3fw4-9jr4?
This vulnerability affects the following AI/ML architecture patterns: agent frameworks, workflow automation pipelines, tool integration for AI agent actions.
What is the CVSS score for GHSA-2x35-3fw4-9jr4?
No CVSS score has been assigned yet.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0053 AI Agent Tool Invocation AML.T0086 Exfiltration via AI Agent Tool Invocation Compliance Controls Affected
What are the technical details?
Original Advisory
## Impact The n8n Send Email node did not enforce that its message fields were strings, so a crafted untrusted non-string value from a workflow expression could be treated by the underlying mail library as a file path or URL. This could allow disclosure of local files on the n8n host. Exploitation requires a pre-existing active workflow with an unauthenticated webhook, valid SMTP credentials configured on the Send Email node, and untrusted input mapped directly into the text or HTML body field. This is not a default n8n configuration. ## Patches The issue has been fixed in n8n versions 1.123.67, 2.31.5, and 2.32.1. Users should upgrade to one of these versions or later to remediate the vulnerability. ## Workarounds If upgrading is not immediately possible, administrators should consider the following temporary mitigations: - Audit active workflows for Send Email nodes that map untrusted webhook or external data directly into the text or HTML body fields, and remove or restrict those workflows. - Restrict public webhook access at the network or reverse-proxy level to prevent unauthenticated callers from reaching sensitive workflows. - Restrict workflow creation and editing permissions to fully trusted users only. These workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.
Exploitation Scenario
An organization runs an n8n workflow that receives external form or alert data via an unauthenticated webhook and forwards a summary email using the Send Email node, with the email body populated from a workflow expression referencing the incoming payload. An attacker submits a crafted JSON payload where the field mapped to the email body is not a plain string but an object or array shape that the mail library's parameter handling misinterprets as a file path or URL (e.g., referencing `/etc/passwd`, a cloud metadata URL, or a local secrets file). The Send Email node passes this value through unchanged, the mail library resolves it as a path/URL instead of literal text, and the contents of that local file are read and delivered via email to whatever recipient the workflow is configured to send to — potentially the attacker if the workflow reflects a reply-to or CC field, or an internal address the attacker can later access.
Weaknesses (CWE)
CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
Primary
CWE-843 Access of Resource Using Incompatible Type ('Type Confusion')
Primary
CWE-918 Server-Side Request Forgery (SSRF)
Primary
CWE-200 — Exposure of Sensitive Information to an Unauthorized Actor: The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.
- [Architecture and Design] Compartmentalize the system to have "safe" areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
Source: MITRE CWE corpus.
References
- github.com/advisories/GHSA-2x35-3fw4-9jr4
- github.com/n8n-io/n8n/commit/f69dfc6dd2178a14ea1624d2e1d403c2e755042f
- github.com/n8n-io/n8n/releases/tag/n8n@1.123.67
- github.com/n8n-io/n8n/releases/tag/n8n@2.31.5
- github.com/n8n-io/n8n/releases/tag/n8n@2.32.1
- github.com/n8n-io/n8n/security/advisories/GHSA-2x35-3fw4-9jr4
Timeline
Related Vulnerabilities
CVE-2026-33663 10.0 n8n: member role steals plaintext HTTP credentials
Same package: n8n CVE-2026-33660 10.0 TensorFlow: type confusion NPD in tensor conversion
Same package: n8n CVE-2026-21858 10.0 n8n: Input Validation flaw enables exploitation
Same package: n8n CVE-2026-27577 9.9 n8n: Code Injection enables RCE
Same package: n8n CVE-2026-27495 9.9 n8n: Code Injection enables RCE
Same package: n8n