GHSA-hx4h-vr3m-45vh: n8n: Prototype Pollution via VM Expression Engine Sandbox Escape Leads to Denial of Service
An authenticated n8n user who can create or edit workflow expressions can abuse the VM expression engine's array-element access to reach a host built-in object and pollute its prototype in the main n8n process. The result is denial of service. Self-hosted and cloud instances using the VM expression engine are affected. Fixed in n8n 1.123.67, 2.31.5 and 2.32.1.
Published Jul 22, 2026 · Analysis Oct 25, 2026
What an attacker can do
n8n evaluates workflow expressions, the {{ ... }} snippets, in a VM-based expression engine that is meant to keep expression code away from the host. The engine's handling of array-element access let an expression obtain a reference to a host built-in. Writing to that object's prototype changes behavior for every piece of code in the main n8n process, since they share the same built-ins.
The advisory names denial of service as the result. A polluted prototype can make the main process throw errors or misbehave on ordinary operations, which takes the whole instance down for all users, not just the attacker's workflows. The CVSS 4.0 vector reflects that: no confidentiality impact, high integrity and availability impact on the n8n system.
The attacker needs a low-privilege account that can create or edit a workflow expression. Instances that give workflow editing to many members, or to customers, are the most exposed. Because the pollution lives in the main process, restarting n8n clears it, but the attacker can repeat it. The advisory does not claim code execution.
Who is affected
The npm package n8n below 1.123.67 on the 1.x line, >= 2.0.0-rc.0, < 2.31.5, and 2.32.0. Self-hosted and cloud instances that run the VM expression engine are affected.
npm ls n8nFor Docker, check the image tag. The attacker must be able to create or edit workflow expressions.
n8n
- Ecosystem
- npm
- Affected
- < 1.123.67
- Fixed in
- 1.123.67
- Check
npm ls n8n
n8n
- Ecosystem
- npm
- Affected
- >= 2.32.0, < 2.32.1
- Fixed in
- 2.32.1
- Check
npm ls n8n
n8n
- Ecosystem
- npm
- Affected
- >= 2.0.0-rc.0, < 2.31.5
- Fixed in
- 2.31.5
- Check
npm ls n8n
How to fix it
Upgrade n8n to 1.123.67, 2.31.5 or 2.32.1, or later, matching your release line.
Temporary measures from the advisory, which it says do not fully remove the risk:
- Limit instance access to fully trusted users.
- Turn off the VM expression engine, if your deployment offers an alternative.
The advisory gives no setting name for the second item, so check the n8n documentation for your version.
How to tell if you were hit
The advisory gives no log signature. Watch for repeated crashes, restarts or unexplained errors in the main n8n process that start soon after a user saves or runs a workflow. Check the n8n logs for exceptions at expression evaluation, and review recently edited workflows for expressions that index into arrays and then touch constructor, __proto__ or prototype.
Audit which accounts can edit workflows, and who changed a workflow shortly before each outage.
Original advisory
From the GitHub Advisory Database (CC BY 4.0).
Impact
An authenticated user able to create or edit a workflow expression could abuse the expression engine's array-element access to obtain a reference to a host built-in and pollute its prototype in the main n8n process, leading to a denial of service.
Both self-hosted and cloud instances running the VM expression engine are affected.
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:
- Restrict n8n instance access to fully trusted users only.
- Disable the VM expression engine if an alternative is available for your deployment.
These workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.
Credited to zolbooo.
Questions
- Does this allow remote code execution in n8n?
The advisory describes prototype pollution leading to denial of service, and does not claim code execution. It is rated moderate, with a CVSS v4 score of 6.1.
- Who can trigger it?
An authenticated user able to create or edit a workflow expression. Anonymous visitors cannot, unless they have such an account.
- Are n8n Cloud instances affected?
The advisory says both self-hosted and cloud instances running the VM expression engine are affected.
- Which versions fix GHSA-hx4h-vr3m-45vh?
n8n 1.123.67, 2.31.5 and 2.32.1, or later in the same line.
References
Read for this analysis:
- https://github.com/n8n-io/n8n/commit/f69dfc6dd2178a14ea1624d2e1d403c2e755042f
- https://github.com/n8n-io/n8n/releases/tag/[email protected]
- https://github.com/n8n-io/n8n/releases/tag/[email protected]
- https://github.com/n8n-io/n8n/releases/tag/[email protected]
- https://github.com/advisories/GHSA-hx4h-vr3m-45vh
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. The analysis is written by an AI model from the sources listed above and checked by automated rules before it is published. Check versions against the vendor's advisory before you act. Methodology
More n8n vulnerabilities
All n8n entriesCVE-2026-86073
n8n: Per-Resource OAuth Consent Bypass via Unbound Refresh Token Resource Substitution
medium5.9Sep 10, 2026CVE-2026-86074
n8n: Instance AI Credential Setup Accepts Unvalidated Probe URL from Fetched Content
medium5.9Sep 10, 2026CVE-2026-86075
n8n: Unauthenticated Persistent Storage Exhaustion via OAuth Dynamic Client Registration Endpoint
high8.7Sep 10, 2026CVE-2026-86076
n8n: Expression Sandbox Escape via Class-Field Sanitizer Rebinding Can Lead to Code Execution
high8.7Sep 10, 2026CVE-2026-86077
n8n: Anonymous Approval-Gate Bypass via Reused resumeToken over the Chat WebSocket
medium6.3Sep 10, 2026CVE-2026-86078
n8n: Prototype Pollution via Workflow Structure Summary Can Lead to Denial of Service
medium6.0Sep 10, 2026
