Medium

Langflow: Path Traversal in Knowledge Bases API via Creation Endpoint

  • Disclosed: 16.06.2026
  • Updated: 11.10.2026 14:18

Summary

Langflow is vulnerable to Path Traversal in the Knowledge Bases API (POST /api/v1/knowledge_bases). This occurs because user-supplied knowledge base names are used directly to create file paths without proper sanitization or containment checks. An authenticated attacker can exploit this flaw to create directories and write files anywhere on the server's filesystem.

Details

The vulnerability exists in the create_knowledge_base function within src/backend/base/langflow/api/v1/knowledge_bases.py.

This function constructs file paths directly from the user-supplied name field without sanitization. The value is concatenated with the user's base directory and passed directly to kb_path.mkdir(). Immediately following the directory creation, the application writes embedding_metadata.json and schema.json into this attacker-controlled path.

PoC (Proof of Concept)

For the Create endpoint, an attacker can supply traversal sequences or absolute paths in the name field:

../victim_user/evil_kb or /tmp/pwned

This forces kb_path.mkdir() to create directories and write specific application files (embedding_metadata.json and schema.json) at any reachable path on the server.

Impact

Any Langflow instance exposing this endpoint to authenticated users is vulnerable. This exposes the server to:

  • Cross-user data compromise: Creation of directories and files within another tenant's knowledge base space.
  • Arbitrary filesystem manipulation: Directory creation at any path on the server where the application has write permissions (e.g., /app/data).
  • Data overwrite: Overwriting existing embedding_metadata.json and schema.json files in attacker-targeted paths, potentially corrupting existing knowledge bases.

Fixes

The issue was addressed in PR #12337. The fix introduces the _validate_kb_path_containment() helper function, which uses Path.is_relative_to() instead of startswith() to enforce strict path boundaries and prevent prefix-ambiguity bugs. This helper is applied before any filesystem operations. Regression tests were added to verify that traversal payloads return a 403 Forbidden.

Acknowledgements

Thanks to the security researchers who responsibly disclosed this vulnerability:

  • @ddlxstudio
  • @nekros1xx

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Python (PyPI) langflow < 1.9.0 1.9.0

References

CVSS score 6.5/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness (CWE)
CWE-22
Platform
Python (PyPI)
Package
langflow
Disclosed
16.06.2026
Updated
11.10.2026 14:18

Sources and licenses

OSV / GitHub Advisory Database - PYSEC-2026-2566 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-79ph-745m-6wxq - CC BY 4.0

Vulnerability history: langflow

All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (42) in the archive
Total entries
42
First → latest
06.2024 10.2026
Without a fix
7
Exploited in attacks
5

Severity breakdown

  • Critical 15
  • High 17
  • Medium 7
  • Low 3

Disclosures per year

  1. 2024: 4
  2. 2025: 5
  3. 2026: 33
Severity:
  1. Critical · 9.1 CVE-2026-9205 < 1.10.1 1.10.1
  2. Critical · 9.8 CVE-2026-8505 >= 1.7.0, < 1.9.1 1.9.1
  3. High · 8.8 CVE-2026-7700 >= 1.3.0, < 1.10.3 1.10.3
  4. Critical · 9.6 CVE-2026-48519 < 1.9.2 1.9.2
  5. Langflow: Path Traversal in Knowledge Bases API via Creation Endpoint this entry
    Medium · 6.5 CVE-2026-42867 < 1.9.0 1.9.0
  6. Critical · 9.6 CVE-2026-42048 < 1.9.0 1.9.0
  7. High · 7.5 CVE-2026-33484 >= 1.0.0, < 1.9.0 1.9.0
  8. Critical · 9.9 CVE-2026-33309 >= 1.2.0, < 1.9.0 1.9.0
  9. Critical · 9.8 Exploited in attacks CVE-2026-33017 < 1.9.0 1.9.0
  10. Critical · 9.8 CVE-2026-27966 <= 1.8.0rc2 no fix
  11. High Exploited in attacks CVE-2026-0770 <= 1.7.3 no fix
  12. High · 7.7 CVE-2025-68477 < 1.7.1 1.7.1
  13. High · 7.1 CVE-2025-68478 < 1.7.1 1.7.1
  14. Critical Exploited in attacks CVE-2025-3248 < 1.3.0 1.3.0

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.