Safeguard
Vulnerability Analysis•

CVE-2026-77072: High Stored XSS in n8n Form Node

CVE-2026-77072 is a high (7.6) stored XSS in the n8n Form node completion page. Upgrade to 1.123.69, 2.33.4 or 2.34.1 or later.

Safeguard Security Team
4 min read

CVE-2026-77072 is a high severity (7.6) stored cross-site scripting flaw in n8n's Form node completion page. A member could make the page serve unsanitized HTML and script from the n8n origin. n8n before 1.123.69, 2.33.4 and 2.34.1 is affected. Upgrade to those versions or later.

What's affected

The record says n8n before 1.123.69, 2.x before 2.33.4, and 2.34.x before 2.34.1 are affected. GitHub's advisory lists the same range and says the patched versions are 1.123.69, 2.33.4 and 2.34.1 or later.

The component is the Form node's completion page. The record says an authenticated member could set respondWith to redirect through an expression while keeping responseText filled in, so the page served raw HTML without its sandboxing policy. Any visitor who submitted the resulting public form would have that script run on the n8n origin with their session.

Where sources differ. The advisory scores this High 8.4 on CVSS 4.0, and the record's CVSS 3.1 score is different, so the two numbers describe the same flaw through different scoring models. The advisory's own patch note names 1.123.67, 2.31.5 and 2.32.1 as fixed versions, while its affected range runs below 1.123.69, 2.33.4 and 2.34.1. That is inconsistent, so move to 1.123.69, 2.33.4 or 2.34.1 or later, which satisfies both.

How to check if you're exposed

Find every n8n instance, including ones a team stood up on its own, and print the version:

n8n --version
docker exec <container> n8n --version
npm ls -g n8n

The first works where the CLI is installed, the second for a Docker container, the third for a global npm install. Compare with the patched versions: 1.123.69 on the 1.x line, 2.33.4 on 2.33, and 2.34.1 on 2.34. Also list workflows that use the Form node, and see which are reachable from outside.

GitHub lists these temporary mitigations in the advisory:

  • Restrict n8n instance access to fully trusted users only.
  • Restrict public access to form endpoints at the network or reverse-proxy level.

GitHub is clear that they do not fully remediate the risk and are short-term measures. A dependency scan is the quickest way to find this kind of component across many projects. Safeguard's free in-browser scan at gold.safeguard.sh/scan checks your dependencies against known CVEs, and reachability analysis helps you separate libraries your code actually calls from ones that only sit in the tree.

What to do now

  1. Upgrade n8n to 1.123.69, 2.33.4, or 2.34.1 or later, whichever matches your release line.
  2. Until you can, apply the advisory's temporary mitigations, which GitHub says reduce risk without fully fixing it.
  3. Review who has accounts on the instance and what role each holds. Remove people who do not need access.
  4. Look through existing workflows for the feature involved, and confirm nothing unexpected has been added.
  5. Re-check the version afterward and record it.

Why it matters

The completion page applied its sandboxing Content-Security-Policy only when respondWith was not redirect, yet responseText was rendered as raw HTML in every case. An attacker with a member account could pick the combination that skips the protection and keep script in the text. That is stored cross-site scripting, filed under CWE-79.

What raises the risk is the origin. The script runs on the n8n origin, so it shares the session of whoever submits the public form, and that can include staff who test forms. Public forms mean the visitors are outside your team. The record does not mark it as a CISA KEV entry.

Quick check

Who is at risk?

Visitors who submit a form built by the attacker, and the n8n users among them, since the script runs on the n8n origin with their session.

Which node is involved?

The Form node's completion page.

Sources

Last reviewed: 18 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.