The vulnerability is a classic reflected Cross-Site Scripting (XSS) issue affecting multiple trigger nodes in n8n: Facebook, Facebook Lead Ads, Microsoft Teams, and WhatsApp. The root cause is the same across all affected components. During the webhook verification (or 'challenge') process, these trigger nodes receive a request containing a token in a query parameter (e.g., hub.challenge or validationToken). The webhook's logic was designed to echo this token back in the HTTP response to prove control over the endpoint. However, the vulnerable versions of the code did this without explicitly setting the Content-Type header of the response. Most modern web browsers will attempt to guess the content type if it's not specified (a behavior known as 'MIME sniffing') and may render the response as HTML. An attacker could exploit this by crafting a URL where the challenge token is replaced with a malicious HTML/JavaScript payload. When a logged-in n8n user clicks this link, their browser sends the request to the n8n instance, which then reflects the malicious payload back in the response. The browser, interpreting the response as HTML, executes the script in the context of the n8n origin, giving the attacker access to the user's session, data, and capabilities within the application. The patch addresses this vulnerability by explicitly setting the Content-Type of the challenge response to text/plain. This instructs the browser to treat the response as plain text and not to interpret it as HTML, thus preventing the execution of any embedded scripts.