Description
n8n before versions 1.123.61, 2.27.4, and 2.28.1 contains a permission bypass vulnerability in external secrets handling caused by a mismatch between the static validation check and the runtime expression engine. An authenticated user with credential create or update permissions but without the externalSecret:list scope can embed external secret references into credentials in forms the static validation does not detect; these references resolve at workflow execution time, exposing secret values the user is not authorized to access. This issue only affects instances where an external secrets provider is configured and Advanced Permissions are in use.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| n8n | n8n | < 1.123.61, 2.28.0 – < 2.28.1, 2.0.0-rc.0 – < 2.27.4 | 1.123.61 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | n8n | < 1.123.61 | 1.123.61 | GHSA-jp7m-xcgx-57qm |
| npm | n8n | >= 2.28.0, < 2.28.1 | 2.28.1 | GHSA-jp7m-xcgx-57qm |
| npm | n8n | >= 2.0.0-rc.0, < 2.27.4 | 2.27.4 | GHSA-jp7m-xcgx-57qm |
Advisories 1
- WID-SEC-2026-2067 n8n: Mehrere Schwachstellen BSI CERT-Bund (WID) · Jul 15, 2026
References
- GitHub Security Advisory (GHSA-jp7m-xcgx-57qm) vendor-advisory
- VulnCheck Advisory: n8n - Permission Bypass via Expression Parser Mismatch in External Secrets third-party-advisory