
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-35002 is an eval injection vulnerability in the Agno AI agent framework (pip package) that allows unauthenticated remote attackers to execute arbitrary Python code. All versions of Agno prior to 2.3.24 are affected. The vulnerability was published on April 2, 2026, with a patch released in version 2.3.24. It carries a CVSS v3.1 base score of 9.8 (Critical) and a CVSS v4.0 base score of 9.3 (Critical) (Github Advisory, Feedly).
The root cause is CWE-95 (Improper Neutralization of Directives in Dynamically Evaluated Code — 'Eval Injection'). In the vulnerable code path within libs/agno/agno/models/base.py and libs/agno/agno/tools/function.py, the field_type parameter extracted from a FunctionCall's user_input_fields argument was passed directly to Python's built-in eval() function without sanitization, allowing arbitrary Python expressions to be evaluated. The fix replaced eval() with a safe dictionary lookup mapping only known type strings (str, int, float, bool, list, dict) to their corresponding Python types. No authentication or user interaction is required to trigger the vulnerable code path (Github Commit, Github Advisory).
Successful exploitation grants an unauthenticated network attacker the ability to execute arbitrary Python code on the host running the Agno framework, resulting in complete compromise of confidentiality, integrity, and availability. An attacker can read or exfiltrate sensitive data, modify or destroy system data, disrupt service availability, and potentially pivot to other systems accessible from the compromised host. Because no privileges or user interaction are required, the attack surface is broad for any internet-exposed Agno deployment (Github Advisory, Feedly).
As of the time of reporting, there is no public proof-of-concept exploit and no confirmed evidence of in-the-wild exploitation (Feedly). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.59% (0.00586), placing it in the 36th percentile for exploitation probability within 30 days (Github Advisory). No threat actor attribution has been reported. The vulnerability was assigned and disclosed by VulnCheck (Feedly).
agno versions < 2.3.24) using network scanning tools or by inspecting application dependencies.FunctionCall arguments, specifically those containing user_input_fields with a field_type key.FunctionCall request where the field_type value within user_input_fields contains an arbitrary Python expression, such as __import__('os').system('id') or a reverse shell payload.base.py or function.py passes the attacker-controlled field_type string directly to eval(), executing the injected Python code in the server's runtime context.eval() with non-standard type strings (anything other than str, int, float, bool, list, dict).sh, bash, curl, wget, python3) that are not part of normal agent operation.Upgrade the Agno pip package to version 2.3.24 or later, which replaces the unsafe eval() call with a safe dictionary-based type mapping (Github Advisory, Agno Release). The fix was committed on April 16, 2026 (commit cbf6755). Until patching is complete, isolate Agno instances from untrusted network sources and restrict access to model execution endpoints using network-level controls such as firewalls or API gateways (Feedly).
The vulnerability was discovered and disclosed by VulnCheck, who published an advisory detailing the eval injection mechanism (VulnCheck Advisory). A technical write-up was also published by Infinitsec covering the field_type eval injection (Infinitsec). The CVE was noted on social platforms including Bluesky. Community reaction has been limited, consistent with the absence of active exploitation.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."