Cyber Resilience

CVE-2024-5565

HighRCE

Published: 31 May 2024

Published
31 May 2024
Modified
15 April 2026
KEV Added
Patch
CVSS Score v3.1 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.0649 91.3th percentile
Risk Priority 20 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2024-5565 is a high-severity Code Injection (CWE-94) vulnerability in Jfrog (inferred from references). Its CVSS base score is 8.1 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Python (T1059.006); ranked in the top 8.7% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

This vulnerability is AI-related — categorised as AI Agent Protocols and Integrations; in the LLM/Generative AI Risks risk domain; MITRE ATLAS techniques in scope: Indirect (AML.T0051.001).

Deeper analysis

The vulnerability CVE-2024-5565 affects the Vanna library and stems from insufficient sanitization of external input passed to its prompt function when rendering visualized results. Specifically, supplying crafted input to the library’s “ask” method with the visualize parameter set to True (the default) permits prompt injection that replaces the intended visualization code with attacker-controlled Python statements, resulting in remote code execution. The issue is tracked under CWE-94 and carries a CVSS 3.1 score of 8.1.

An unauthenticated remote attacker can exploit the flaw over the network by sending malicious input directly to any application or service that invokes Vanna’s ask method with visualization enabled. Successful exploitation grants the attacker the ability to execute arbitrary Python code within the context of the vulnerable process, potentially leading to full compromise of confidentiality, integrity, and availability.

Public references point to detailed analysis published by JFrog, which describes the injection vector and confirms the remote code execution path but does not enumerate specific patches or configuration workarounds in the supplied material. The associated EPSS score has remained flat at 0.0649 with no material increase since disclosure.

EU & UK References

Vulnerability details

The Vanna library uses a prompt function to present the user with visualized results, it is possible to alter the prompt using prompt injection and run arbitrary Python code instead of the intended visualization code. Specifically - allowing external input…

more

to the library’s “ask” method with "visualize" set to True (default behavior) leads to remote code execution.

CWE(s)

AI Security AnalysisAI

AI Category
AI Agent Protocols and Integrations
Risk Domain
LLM/Generative AI Risks
OWASP Top 10 for LLMs 2025
None mapped
Classification Reason
Vanna is an open-source Python library functioning as an AI SQL agent that uses LLMs for natural language queries to generate SQL and visualizations, making it an AI agent integration vulnerable to prompt injection.

Related Threats

MITRE ATT&CK Enterprise TechniquesAI

T1059.006 Python Execution
Adversaries may abuse Python commands and scripts for execution.
Why these techniques?

The CVE enables prompt injection in the Vanna library's 'ask' method, allowing arbitrary Python code execution when visualize=True, directly facilitating T1059.006: Python.

MITRE ATLAS TechniquesAI

MITRE ATLAS techniques

AML.T0051.001: Indirect

Affected Assets

Jfrog
inferred from references and description; NVD did not file a CPE for this CVE

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-94

Makes persistent code injection into loaded programs impossible when the executable image itself resides on hardware-protected read-only media.

addresses: CWE-94

Dynamically generated code can be produced and executed inside the isolated chamber, preventing host compromise from code-injection payloads.

addresses: CWE-94

Validates inputs used in dynamic code generation to block injected directives.

addresses: CWE-94

Directly prevents execution of attacker-supplied code written into data memory regions.

References