DEV Community

CVE Reports
CVE Reports

Posted on Originally published at cvereports.com

CVE-2026-86076: CVE-2026-86076: Remote Code Execution via Expression Sandbox Escape in n8n

CVE-2026-86076: Remote Code Execution via Expression Sandbox Escape in n8n

Vulnerability ID: CVE-2026-86076
CVSS Score: 8.7
Published: 2026-09-10

An expression sandbox escape vulnerability exists in n8n due to a missing AST traversal check on ClassBody in the PrototypeSanitizer. This allows authenticated users with low privileges to bypass property checks and achieve remote code execution.

TL;DR

A missing ClassBody traversal in n8n's expression sanitizer allows low-privileged users to redefine the '__sanitize' resolver on custom classes, escaping the sandbox to execute arbitrary Node.js commands.


Technical Details

  • CWE ID: CWE-94
  • Attack Vector: Network
  • CVSS Score: 8.7 (High)
  • Impact: Remote Code Execution (RCE) / Stored Cross-User JavaScript Execution
  • Exploit Status: PoC (Proof of Concept) Feasible
  • KEV Status: Not Listed

Affected Systems

  • n8n Workflow Automation Platform
  • n8n: < 1.123.76 (Fixed in: 1.123.76)
  • n8n: >= 2.0.0, < 2.37.7 (Fixed in: 2.37.7)
  • n8n: >= 2.38.0, < 2.38.2 (Fixed in: 2.38.2)

Mitigation Strategies

  • Upgrade n8n immediately to version 1.123.76, 2.37.7, or 2.38.2 to resolve the missing AST check.
  • Audit stored workflow configurations within the system database to identify unauthorized expressions.
  • Enforce strict Role-Based Access Control (RBAC) to ensure untrusted users cannot author workflows.

Remediation Steps:

  1. Locate the active deployment and execute the version bump (e.g., 'docker pull n8n-io/n8n:2.38.2').
  2. Scan the workflow database using SQL queries for occurrence of '__sanitize' within the workflow definitions.
  3. Restrict workspace configuration and editing privileges to administrative roles.

References


Read the full report for CVE-2026-86076 on our website for more details including interactive diagrams and full exploit analysis.

Top comments (0)