Description
RAGFlow before 0.26.3 contains a server-side request forgery vulnerability in the agent workflow "Invoke" component (agent/component/invoke.py). The component builds an outbound request URL from canvas configuration and runtime template variables and passes it to requests.get, requests.post, or requests.put without calling the shared assert_url_is_safe validator or pinning the resolved address, unlike the crawler, SearXNG, file-upload, and RSS fetch paths. A user who can create or trigger an agent can direct the server to fetch loopback, link-local, and RFC 1918 destinations, including cloud instance metadata endpoints and services co-located on the deployment network, and the response body is returned as the component output. Where an agent is configured to interpolate the chat query into the Invoke URL, the destination is chosen by whoever can send that query.
References7
- github.com/infiniflow/ragflow/blob/v0.26.2/agent/component/invo…
- github.com/infiniflow/ragflow/commit/c4fe68eaa0bf1d6442d2cd6ac2…
- github.com/infiniflow/ragflow/commit/e16d1a0150e1ca069beb538ae3…
- github.com/infiniflow/ragflow/issues/15425
- github.com/infiniflow/ragflow/issues/18280
- github.com/infiniflow/ragflow/releases/tag/v0.26.3
- www.vulncheck.com/advisories/ragflow-server-side-request-forger…
Metrics
- CVSS 3.1
-
8.5
HIGH
Score source: NVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N - CVSS 4.0
-
8.4
HIGH
Score source: CNA
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:H/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - EPSS — exploit probability
- 0% percentile: 34 · as of 11 November 2026
- CWE
- CWE-918
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.