HIGHCVSS 7.1PoC Available

CVE-2026-91938

Published September 15, 2026 · Source: nvd

Analysis

## Summary
Flowise versions before 3.1.4 contain an SSRF vulnerability in the Cheerio, Playwright, and Puppeteer document loader nodes. These nodes fetch user-supplied URLs without invoking Flowise’s SSRF protections, allowing attackers to retrieve cloud metadata, internal services, and private network resources as document text.

## Technical Details
- The affected nodes accept a user-controlled URL from nodeData.inputs?.url.
- They instantiate LangChain built-in loader classes (e.g., CheerioWebBaseLoader) which perform HTTP requests internally, bypassing Flowise’s SSRF controls in httpSecurity.ts.
- For Cheerio, the code path uses raw fetch(url) inside CheerioWebBaseLoader._scrape() rather than Flowise’s security wrapper.
- Validation present in Flowise is limited to linkifyjs.test(url) (format check only; not an IP/denylist check).
- Playwright/Puppeteer follow the same pattern: their LangChain loaders call page.goto(url) via browser instances, again avoiding checkDenyList() / secureFetch().
- The advisory notes an incomplete fix: PR #5886 added secureFetch/secureAxiosRequest to other components, but the three document loaders were not included.

## Affected
- Flowise versions: before 3.1.4
- Affected document loader nodes:
- Cheerio (packages/components/nodes/documentloaders/Cheerio/Cheerio.ts:157)
- Playwright document loader node
- Puppeteer document loader node

## Impact
- Full-read SSRF via document loader nodes.
- Attackers can reach:
- cloud metadata endpoints (e.g., AWS metadata)
- internal services
- private network resources
- The fetched response is returned to the user as document text.

## Mitigation
1. Patch immediately to a Flowise version that includes the fix for these loaders (the advisory targets versions before 3.1.4).
2. Add checkDenyList(url) before instantiating the LangChain loaders for Cheerio, Playwright, and Puppeteer.
3. Ensure the loader execution path uses Flowise’s SSRF-safe request functions (e.g., secureFetch / secureAxiosRequest) rather than direct internal HTTP calls.

CVSS Vector

CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:L

Weakness

CWE-918

References

← Browse all CVEs