NewApp Monitoring is liveSign up free
AgentbeamBeta
AI agent vulnerability · n8n

CVE-2026-59209: n8n: Shared Credential Header Leak via HTTP Request Pagination Expression

highCVSS 4.0 7.1GHSA-q3j5-8vrg-4p9q

In n8n, a member with use-only access to a shared workflow can read a shared HTTP Header Auth secret through the `$request` object in an HTTP Request node's pagination expression, then send it out through a later node. It only affects instances with `N8N_EXPRESSION_ENGINE=vm`. Fixed in n8n 1.123.61, 2.27.4 and 2.28.1.

Published Jul 22, 2026 · Analysis Oct 25, 2026

What an attacker can do

When an HTTP Header Auth credential is applied to a paginated request, the secret sits in $request.headers while pagination expressions are evaluated. A user who can edit expressions in that workflow can read it there.

The attacker is an authenticated member with use-only editor access to a shared workflow that uses the credential. They write a pagination expression that copies the header value into item data. A later HTTP Request node, pointed at a server they control, sends the item data out.

This bypasses the credential's "Allowed HTTP Request Domains" restriction. That check guards the credential's own request path, but here the secret leaves as ordinary item data, not as a credential-bearing request. The member never sees the secret in the credentials UI, and now has it.

With the secret, the attacker can call the target API with its full permissions. The advisory says the flaw applies only when N8N_EXPRESSION_ENGINE=vm is set and paginated HTTP Request workflows using shared credentials are reachable by non-owner users.

Who is affected

The n8n npm package before 1.123.61, from 2.0.0-rc.0 before 2.27.4, and 2.28.0 before 2.28.1. It matters on instances that set N8N_EXPRESSION_ENGINE=vm and share workflows that use HTTP Request nodes with pagination and an HTTP Header Auth credential.

npm ls n8n

For Docker, check the image tag and the environment for N8N_EXPRESSION_ENGINE.

n8n

Ecosystem
npm
Affected
< 1.123.61
Fixed in
1.123.61
Check
npm ls n8n

n8n

Ecosystem
npm
Affected
>= 2.28.0, < 2.28.1
Fixed in
2.28.1
Check
npm ls n8n

n8n

Ecosystem
npm
Affected
>= 2.0.0-rc.0, < 2.27.4
Fixed in
2.27.4
Check
npm ls n8n

How to fix it

Upgrade to n8n 1.123.61, 2.27.4 or 2.28.1, or later on your release line.

npm install [email protected]

Temporary mitigations from the advisory, which do not fully remove the risk:

  • Restrict workflow sharing to fully trusted users.
  • Do not give use-only credential access to untrusted users on workflows with paginated HTTP Request nodes.

Rotate Header Auth secrets that untrusted members could reach.

How to tell if you were hit

Inspect shared workflows for HTTP Request nodes whose pagination expressions reference $request, especially $request.headers, or that write it into item data. Look for later HTTP Request nodes sending to hosts outside your normal set. Check egress logs from the n8n host for unexpected destinations after runs of those workflows.

Original advisory

From the GitHub Advisory Database (CC BY 4.0).

Impact

An authenticated member with use-only editor access to a shared workflow could read credential-populated headers exposed via the $request object inside an HTTP Request node's pagination expression. When an HTTP Header Auth credential is applied to a paginated request, the secret is present in $request.headers when pagination expressions are evaluated. A user-controlled expression could read that secret, copy it into item data, and exfiltrate it through a later HTTP Request node, bypassing credential domain restrictions, since the secret leaves via item data rather than the credential's own request mechanism.

This issue only affects instances with N8N_EXPRESSION_ENGINE=vm set, where paginated HTTP Request workflows using shared credentials are accessible to non-owner users.

Patches

The issue has been fixed in n8n versions 1.123.61, 2.27.4, and 2.28.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 workflow sharing to fully trusted users only.
  • Avoid sharing credentials with use-only access to untrusted users on workflows that use HTTP Request nodes with pagination enabled.

These workarounds do not fully remediate the risk and should only be used as short-term mitigation measures.

Credited to sm1ee.

Questions

Which setting makes me vulnerable to CVE-2026-59209?

N8N_EXPRESSION_ENGINE=vm, together with shared paginated HTTP Request workflows that use a Header Auth credential and are accessible to non-owner users.

Why doesn't the allowed-domains restriction stop it?

The secret is copied into item data and leaves through a separate HTTP Request node. The restriction covers requests made with the credential, not item data sent out later.

What access does the attacker need?

An authenticated member account with use-only editor access to a shared workflow. No admin rights are needed.

Which versions are fixed?

1.123.61, 2.27.4 and 2.28.1, matched to your release line.

References

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 entries