CVE-2026-76832
HighCVSS 8.8Exploitation Probability (EPSS)
Elevated risk68th percentile - higher than 68% of all known CVEs
Summary
PythonTools in Agno (libs/agno/agno/tools/python.py) contains a path traversal vulnerability that allows attackers to read, write, or execute arbitrary files by supplying parent-directory traversal sequences in the file_name argument to read_file, save_to_file, or run_python_file actions. The attack can be performed via direct tool invocation or via prompt injection in agent-processed content.
Risk Assessment
An attacker can access sensitive files, modify them, or execute arbitrary Python code within the process user's authority, potentially leading to confidentiality, integrity, and availability compromise.
Recommendation
Update Agno to a patched version and restrict access to PythonTools to trusted users.
Other vulnerabilities in Agno
See all- CVE-2026-119050High
Agno through 3.1.11 contains an unsafe reflection vulnerability in PandasTools that allows invoking arbitrary pandas functions via model-controlled function names passed to getattr(). Attackers can use prompt injection to call pandas.read_pickle on attacker-controlled paths for code execution or read local files.
- CVE-2026-37003Critical
Agno up to and including 2.5.8 is vulnerable to Remote Code Execution (RCE) via prompt injection. The PythonTools and ShellTools components pass unsanitized, LLM-generated arguments directly to execution sinks including exec(), runpy.run_path(), and subprocess.run(). An unauthenticated attacker can exploit this by embedding malicious instructions in content processed by the agent (such as web pages or documents), allowing for arbitrary code and OS command execution on the host server.
- CVE-2026-35002Critical
Agno versions prior to 2.3.24 contain an arbitrary code execution vulnerability in the model execution component that allows attackers to execute arbitrary Python code by manipulating the field_type parameter passed to eval(). Attackers can influence the field_type value in a FunctionCall to achieve remote code execution.
- CVE-2026-108820Medium
A weakness was identified in agno-agi agno up to versions 3.0.6/3.1.1 in the member_agent.run function in the library libs/agno/agno/team/_default_tools.py in the Delegation Feature component. Executing a manipulation can lead to execution with unnecessary privileges. The attack can be executed remotely and the exploit has been made public.
- CVE-2026-108819High
A security flaw in agno-agi agno up to 3.0.6/3.1.1 affects the exec function in the Agent Orchestration Layer, allowing remote execution of dynamically-managed code.
- CVE-2026-108818High
A vulnerability in agno-agi agno up to 2.7.3/3.0.6 affects the get_authentication_dependency function in auth.py, where manipulation of the security_key argument leads to missing authentication.
- CVE-2026-108817Medium
A vulnerability was determined in agno-agi agno up to version 3.0.9 in the agno.CodingTools.run_shell function in the library libs/agno/agno/tools/coding.py in the CodingTools component. Manipulation of the command argument causes OS command injection. The attack may be initiated remotely and the exploit has been publicly disclosed.
- CVE-2026-108816Medium
A vulnerability was found in agno-agi agno up to version 3.0.6 in the run_python_code function of the file python.py in the PythonTools component. Manipulation of the code argument results in code injection. The attack can be launched remotely and the exploit has been made public.
- CVE-2026-10105High
A SQL injection vulnerability was found in agno library version 2.6.5 in the ClickHouse vector database backend. The flaw exists in the delete_by_metadata() method in clickhousedb.py, which unsafely interpolates metadata keys and values into SQL queries. An attacker can inject arbitrary SQL expressions, allowing deletion of all rows, targeting specific rows, or extracting information through error-based or blind SQL injection.
Original NVD description (English source)
Agno's PythonTools in libs/agno/agno/tools/python.py contains a path traversal vulnerability that allows attackers to read, write, or execute arbitrary files by supplying parent-directory traversal sequences in the file_name argument passed to read_file, save_to_file, or run_python_file tool actions. Attackers can inject traversal sequences such as '../../../../../../etc/passwd' through direct tool invocation or via prompt injection embedded in agent-processed content to escape the intended base_dir boundary and achieve arbitrary file read, arbitrary file write, or arbitrary Python code execution within the process user's authority.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

