Description
Agno through 3.1.11 contains an unsafe reflection vulnerability in PandasTools that allows attackers to invoke arbitrary pandas functions by supplying model-controlled function names to getattr(). Attackers can use prompt injection to make the agent call pandas.read_pickle on attacker-controlled paths for code execution, or call other readers to read local files.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| agno-agi | agno | ≤ 3.1.11 | — |
References
- GitHub Issue #8699 issue-tracking
- https://github.com/agno-agi/agno product
- https://github.com/agno-agi/agno/blob/d9ab0a758286142e7d998ef313ee7504d7fd9453/libs/agno/agno/tools/pandas.py#L54 technical-description
- https://github.com/agno-agi/agno/blob/d9ab0a758286142e7d998ef313ee7504d7fd9453/libs/agno/agno/tools/pandas.py#L90 technical-description
- VulnCheck Advisory: Agno through 3.1.11 Code Execution via PandasTools Unsafe Reflection third-party-advisory