ZeroHour

CVE-2026-86083

large

Code injection in n8n legacy expression engine via JSON.stringify override

CVSS 4.0
7.7 high
EPSS
<1%p20
Published
()
Modified
AI analysis

n8n versions before 1.123.76, 2.37.7, and 2.38.2 contain a code injection flaw (CWE-94) in the legacy expression engine, which builds executable source text by calling the mutable global JSON.stringify when printing synthetic string literals and interpolating timezone data. An expression evaluated by this engine can replace JSON.stringify, causing later generated source to contain executable attacker-controlled code that runs during expression evaluation. An attacker with low privileges, such as a user who can create or edit workflows or who can influence expression inputs over the network, can gain code execution with high impact on confidentiality, integrity, and availability (CVSS 4.0: 7.7 High). Only instances that evaluate expressions with the legacy engine are affected; the vm expression engine is not. There is no known public proof-of-concept, no known in-the-wild exploitation, and EPSS is low (0.3%, not in CISA KEV), so current exploitation risk is low.

What to do: Upgrade n8n to 1.123.76 on the 1.x line, or to 2.37.7 or 2.38.2 on the 2.x line. Until patched, restrict workflow creation and editing to trusted users and audit existing workflows for expressions that redefine or override JSON.stringify. Operators whose instances use the vm expression engine rather than the legacy engine are not affected by this flaw.

Affected
n8n (open source workflow automation platform)all versions prior to 1.123.76, prior to 2.37.7, and prior to 2.38.2 (legacy expression engine; the vm expression engine is not affected)
Estimated exposure
largeplausibly tens of thousands of self-hosted n8n instances (widely deployed open-source automation platform; no public scan count available) — n8n is one of the most widely self-hosted open-source workflow automation platforms with heavy Docker/npm distribution and a large community, suggesting a deployed base in the tens of thousands, but the data includes no install counts or…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

n8n is an open source workflow automation platform. Prior to 1.123.76, 2.37.7, and 2.38.2, the legacy expression engine generated source text by calling the mutable global JSON.stringify while printing synthetic string literals and interpolating timezone data. An expression could replace JSON.stringify and cause later generated source to contain executable attacker-controlled code. The affected code-generation paths include packages/@n8n/expression-runtime/src/bridge/isolated-vm-bridge.ts and packages/@n8n/tournament/src/ExpressionBuilder.ts, and the issue does not affect the vm expression engine. This issue is fixed in versions 1.123.76, 2.37.7 and 2.38.2.

Vendors
n8n
Products
n8n
Ecosystems
npm
Weakness
CWE-94
Vector
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/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
GHSA
GHSA-6xcw-7xm6-48c6 (high)

In the news

No ingested article mentions this CVE yet.