Skip to content
n8nGHSA-6xcw-7xm6-48c6

n8n: Expression Sandbox Escape via Shared Builtin Tampering and Code-Printer Injection Leads to Code Execution

HighCVE-2026-86083 · Published Sep 10, 2026

GitHub advisory

Affected versions

PackageAffectedFixed in
n8n
npm
< 1.123.761.123.76
>= 2.38.0, < 2.38.22.38.2
>= 2.0.0, < 2.37.72.37.7
Details and references

## Impact Two stages of expression code generation built source text by calling the global `JSON.stringify` at generation time: the compiler when printing synthetic string literals, and the isolate bridge when interpolating a timezone value into its per-evaluation wrapper. An expression that replaced that global therefore changed the code that was subsequently generated and executed, turning literal data into executable source. The patch renders both code-generation stages through a reference captured at module load, so a later change to global state cannot alter the generated source. This vulnerability only affects instances running the legacy expression engine. The `vm` expression engine, which is the default on the patched releases, is not affected. ## Patches The issue has been fixed in n8n versions 1.123.76, 2.37.7, and 2.38.2. 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: - Set the environment variable `N8N_EXPRESSION_ENGINE=vm` to switch to the vm expression engine, which is not affected by this vulnerability. - Restrict n8n instance access to fully trusted users only. - Ensure the n8n process runs under a dedicated low-privilege OS user account to limit the impact of any command execution. These workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.

CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Severity from
GitHub (reviewed advisory)
Weakness
CWE-94
Also known as
CVE-2026-86083

More n8n advisories

All n8n
DateAdvisory
Sep 10n8n: Expression Sandbox Escape via Class-Field Sanitizer Rebinding Can Lead to Code Execution
CVE-2026-86076Highfixed in 1.123.76, 2.37.7, 2.38.2
Sep 10n8n: Unauthenticated Persistent Storage Exhaustion via OAuth Dynamic Client Registration Endpoint
CVE-2026-86075Highfixed in 2.37.7, 2.38.2
Sep 10n8n: Regular Expression Denial of Service in the Default Blocked-File-Pattern Match via a Git Node Clone Path
CVE-2026-86081Highfixed in 1.123.76, 2.37.7, 2.38.2
Sep 10n8n: Domain-Restriction Bypass via Unguarded Model-Search Endpoint in OpenAI Chat Model Node
CVE-2026-86082Highfixed in 1.123.76, 2.37.7, 2.38.2
Sep 10n8n: Anonymous Approval-Gate Bypass via Reused resumeToken over the Chat WebSocket
CVE-2026-86077Mediumfixed in 2.37.7, 2.38.2
Sep 10n8n: Cross-User Active Workflow ID and Lifecycle Event Disclosure via Missing userId Filter
CVE-2026-86994Mediumfixed in 1.123.76, 2.37.7, 2.38.2

Critical advisories by email

Wednesdays: the week’s critical and high advisories in the AI and data stack, with the fixed versions. Only in weeks that have some.

Double opt-in. Unsubscribe any time.