Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/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
Unauthenticated network endpoint (AV:N/AC:L/PR:N/UI:N); arbitrary file write drives I:H, limited metadata read gives C:L, and write-induced disruption A:L.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Vanna through 2.0.2 contains a path traversal vulnerability in the FileSystemConversationStore persistence integration that allows unauthenticated remote attackers to write attacker-controlled JSON files to arbitrary filesystem locations and read conversation metadata from outside the intended store base directory. Attackers can supply path traversal sequences in the conversation_id parameter submitted to the unauthenticated chat API endpoints to escape the base directory during both write and read operations, enabling arbitrary file write with attacker-controlled content and unauthorized file read on the server filesystem.
AnalysisAI
Arbitrary file write and unauthorized file read in Vanna (the open-source AI SQL agent) through version 2.0.2 allows unauthenticated remote attackers to escape the FileSystemConversationStore base directory by injecting path traversal sequences into the conversation_id parameter of the chat API. Because the affected endpoints require no authentication, an attacker can write attacker-controlled JSON to arbitrary filesystem locations and read conversation metadata from outside the intended store - publicly available exploit code exists and the flaw was reported by VulnCheck. No CISA KEV listing is present, so there is no public exploit identified as being actively used in the wild.
Technical ContextAI
Vanna is a Python-based retrieval-augmented framework that lets users ask natural-language questions and generates SQL against a database, exposing a chat/conversation API. The vulnerable component is the FileSystemConversationStore persistence integration, which serializes conversation state to JSON files on disk under a configured base directory. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / Path Traversal): the conversation_id supplied by the client is used to construct the on-disk file path without canonicalization or containment validation, so sequences such as '../' let the resolved path escape the store base directory during both write (save) and read (load) operations. The affected product is identified by CPE cpe:2.3:a:vanna-ai:vanna:*:*:*:*:*:*:*:* for all versions up to and including 2.0.2.
RemediationAI
No vendor-released patch version is identified in the available data, so upgrade to a fixed release once the Vanna maintainers publish one and monitor the VulnCheck advisory (https://www.vulncheck.com/advisories/vanna-path-traversal-via-filesystemconversationstore) for the corrected version. As compensating controls, avoid exposing the chat API to untrusted networks by placing it behind authentication and a reverse proxy or network ACLs; if authentication cannot be added, restrict access to the chat endpoints at the perimeter. Where feasible, switch away from FileSystemConversationStore to a non-filesystem conversation store to remove the file-path sink entirely, or run the service as an unprivileged user in a container/chroot with a read-only filesystem outside the store directory so traversal cannot reach sensitive paths - the trade-off is that hardening the runtime does not stop writes within the writable store and may require operational changes. Validate and canonicalize conversation_id server-side (reject any value containing path separators or traversal sequences) if you maintain a local fork.
Missing authentication in vanna-ai vanna Chat API endpoint (/api/vanna/v2/) allows unauthenticated remote attackers to p
Improper authorization in Vanna AI's Legacy Flask API allows remote unauthenticated attackers to bypass authentication c
Server-side request forgery in Vanna AI versions up to 2.0.2 allows unauthenticated remote attackers to manipulate the u
SQL injection in Vanna AI's BigQuery integration (versions up to 2.0.2) allows unauthenticated remote attackers to manip
A code injection vulnerability exists in vanna-ai vanna up to version 2.0.2, specifically in the exec function of the /s
SQL injection in vanna-ai vanna versions up to 2.0.2 allows authenticated remote attackers to manipulate the ask functio
SQL injection in Vanna up to version 2.0.2 allows authenticated remote attackers to execute arbitrary SQL queries throug
Cross-Origin Resource Sharing (CORS) misconfiguration in vanna-ai vanna up to version 2.0.2 allows authenticated remote
Same weakness CWE-22 – Path Traversal
View allSame technique Path Traversal
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-48335
GHSA-xxc9-8wc2-p57g