Skip to content

n8n's Possible Stored XSS in "Respond to Webhook" Node May Execute Outside iframe Sandbox

High severity GitHub Reviewed Published Dec 26, 2025 in n8n-io/n8n • Updated Dec 27, 2025

Package

npm n8n (npm)

Affected versions

< 1.114.0

Patched versions

1.114.0

Description

Summary

A stored Cross-Site Scripting (XSS) vulnerability may occur in n8n when using the “Respond to Webhook” node.
When this node responds with HTML content containing executable scripts, the payload may execute directly in the top-level window, rather than within the expected sandbox introduced in version 1.103.0.

This behavior can enable a malicious actor with workflow creation permissions to execute arbitrary JavaScript in the context of the n8n editor interface.

While session cookies (n8n-auth) are marked HttpOnly and cannot be directly exfiltrated, the vulnerability can facilitate Cross-Site Request Forgery (CSRF)-like actions from within the user’s authenticated session, potentially allowing:

  • Unauthorized reading of sensitive workflow data or execution history.
  • Unauthorized modification or deletion of workflows.
  • Insertion of malicious workflow logic or external data exfiltration steps.

n8n instances that allow untrusted users to create workflows are particularly impacted.

Patches

The vulnerability has been patched in v.1.114.0.

Workarounds

  • Restrict workflow creation and modification privileges to trusted users only.
  • Avoid using untrusted HTML responses in the “Respond to Webhook” node.
  • Use an external reverse proxy or HTML sanitizer to filter responses that include executable scripts.

References

@csuermann csuermann published to n8n-io/n8n Dec 26, 2025
Published to the GitHub Advisory Database Dec 26, 2025
Reviewed Dec 26, 2025
Published by the National Vulnerability Database Dec 26, 2025
Last updated Dec 27, 2025

Severity

High

CVSS overall score

This score calculates overall vulnerability severity from 0 to 10 and is based on the Common Vulnerability Scoring System (CVSS).
/ 10

CVSS v3 base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

CVSS v3 base metrics

Attack vector: More severe the more the remote (logically and physically) an attacker can be in order to exploit the vulnerability.
Attack complexity: More severe for the least complex attacks.
Privileges required: More severe if no privileges are required.
User interaction: More severe when no user interaction is required.
Scope: More severe when a scope change occurs, e.g. one vulnerable component impacts resources in components beyond its security scope.
Confidentiality: More severe when loss of data confidentiality is highest, measuring the level of data access available to an unauthorized user.
Integrity: More severe when loss of data integrity is the highest, measuring the consequence of data modification possible by an unauthorized user.
Availability: More severe when the loss of impacted component availability is highest.
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N

EPSS score

Exploit Prediction Scoring System (EPSS)

This score estimates the probability of this vulnerability being exploited within the next 30 days. Data provided by FIRST.
(7th percentile)

Weaknesses

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. Learn more on MITRE.

CVE ID

CVE-2025-61914

GHSA ID

GHSA-58jc-rcg5-95f3

Source code

Credits

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.