Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
flowise-arbitrary-file-read-getFileFromStorage — Unauthenticated arbitrary file read in Flowise (< 2.2.4) via path traversal in getFileFromStorage (storageUtils.ts). Caused by un-sanitized file path combined with mass-assignment in PUT /api/v1/document-store/store/:id. Allows full compromise via /root/.flowise/encryption.key read. Distinct from CVE-2025-71338 (fixed in 2.2.4). | Kitploit
Tools/GitHubGitHub/majpuv/flowise-arbitrary-file-read-getfilefromstorage
Vulnerability AnalysisExploitationWeb Application ExploitationData ExfiltrationInformation GatheringPenetration TestingLabs & Practice
GitHubmajpuv/flowise-arbitrary-file-read-getfilefromstorage

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →

About

Unauthenticated arbitrary file read in Flowise (< 2.2.4) via path traversal in getFileFromStorage (storageUtils.ts). Caused by un-sanitized file path combined with mass-assignment in PUT /api/v1/document-store/store/:id. Allows full compromise via /root/.flowise/encryption.key read. Distinct from CVE-2025-71338 (fixed in 2.2.4).

flowise-arbitrary-file-read-getFileFromStorage

View Repository
16 days agoNot yet reviewed
Share

Flowise unauthenticated arbitrary file READ (getFileFromStorage) — proposed NEW CVE

A separate vulnerability from CVE-2025-71338 (which is the write sink). This is an unauthenticated arbitrary file read in the Flowise document-store loader "rehydrate" path, affected 1.7.1 – 2.2.3, fixed in 2.2.4. Reading /root/.flowise/encryption.key yields the key that decrypts all stored provider credentials → full credential compromise.

Contents

FilePurpose
report.mdThe new-CVE submission: root cause, vuln path, CVSS, impact, affected versions, solution, PoC, distinction from existing CVEs
poc.pySelf-proving PoC (stdlib only) — forges loaders via mass assignment, triggers the FILE-STORAGE:: rehydrate read, prints the file contents in-band
docker/DockerfileVersion-parameterized lab image (FROM the real vendor image; zero overlay)
setup.shBuilds/starts the lab (FLOWISE_VERSION, default 2.1.0); classifies affected vs fixed
evidence.txtLive verification: byte-exact encryption.key exfil on 2.1.0 & 2.2.3; NOT-EXPLOITABLE on 2.2.4

Quick start

root@kitploit:~
# start an affected lab (default 2.1.0):
bash setup.sh
# exfiltrate the credential-decryption key (self-proving; no listener):
python3 poc.py http://127.0.0.1:3510 --read-path /root/.flowise/encryption.key
# ground truth:
docker exec <container> cat /root/.flowise/encryption.key

One-line proof

getFileFromStorage(file, ...paths) does path.join(getStoragePath(), ...paths, file) + fs.readFileSync with file unsanitized (raw ≤ 2.2.3, _sanitizeFilename added in 2.2.4); file is attacker-supplied via the FILE-STORAGE:: loader value, and the gating loaders[].files[] entry is forged by the PUT /store/:id mass assignment (Object.assign(entity, req.body)).

Download Tool