Vanna: Code injection in VannaBase.get_plotly_figure
Summary
Vanna v2.0.2 contains a code injection flaw in the legacy function VannaBase.get_plotly_figure. Depending on the exposed entry point, an attacker can run attacker-controlled code or commands on the host running Vanna. Exploitation is network-reachable and rated as low complexity, and CISA SSVC lists a proof of concept as existing; the official record lists no authentication requirement, but this depends on how the application exposes Vanna.
Affected
- Vanna v2.0.2 (named in the CVE record)
- Other 2.x releases: Unknown.
Fixed in
- Unknown. No vendor advisory or patched version has been confirmed.
Workaround
- Do not expose Vanna endpoints to the internet; place them behind authentication, SSO or a VPN.
- Do not use the legacy get_plotly_figure path or chart generation with untrusted input.
- Run the service in a container with minimal privileges and without access to secrets.
- Monitor for unexpected child processes spawned by the Python service.
Exploitation
- CISA SSVC: exploitation status 'poc', automatable 'yes', technical impact 'total'.
- Not listed in CISA KEV. No confirmed in-the-wild exploitation.
- A public proof of concept may exist; VulDB states no exploit exists, so the status is conflicting and unverified.
Our recommendation
- Inventory all Vanna deployments and check for version 2.0.2 (pip show vanna).
- Verify whether the web endpoints are internet-facing and whether they require authentication.
- Restrict access via VPN, SSO or IP allow-listing and disable chart features where not needed.
- Watch the vendor GitHub repository and NVD for a patched release and verify the installed version after patching.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- CVE-2026-51911 gist (Ro1ME) gist.github.com
- Vanna GitHub repository github.com
- OpenCVE: CVE-2026-51911 app.opencve.io
- VulDB: CVE-2026-51911 vuldb.com
- VulDB: vulnerability 413157 vuldb.com
- Vanna data security vanna.ai
- Vulners: CVE-2026-51911 (Rapid7) vulners.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 30 Oct 2026, 21:23.
Original description (NVD)
vanna v2.0.2 contains a code injection vulnerability in VannaBase.get_plotly_figure (src/vanna/legacy/base/base.py). Depending on the exposed entry, an attacker can trigger attacker-controlled code or command execution.
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
