CVE-2025-46725 Langroid has a Code Injection vulnerability in LanceDocChatAgent through vector_store
Attackers can execute arbitrary code on the host system via malicious input in Langroid's LanceDocChatAgent due to unsafe pandas eval usage.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2025-46725?
CVE-2025-46725 is a high-severity code injection vulnerability in langroid, published on 20 May 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Langroid is a Python framework to build large language model (LLM)-powered applications. Prior to version 0.53.15, `LanceDocChatAgent` uses pandas eval() through `compute_from_docs()`. As a result, an attacker may be able to make the agent run malicious commands through `QueryPlan.dataframe_calc]`) compromising the host system. Langroid 0.53.15 sanitizes input to the affected function by default to tackle the most common attack vectors, and added several warnings about the risky behavior in the project documentation.
Weakness: CWE-94
Which versions are affected by CVE-2025-46725?
3 open source packages ship an affected version, including langroid. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
langroid PyPI | All versions | 0.53.15 |
langroid PyPI | All versions | 0.53.15 |
langroid PyPI | All versions | 0.53.15 |
Products include Langroid Langroid.
How do I fix CVE-2025-46725?
Upgrade langroid to 0.53.15 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2025-46725 being exploited?
There is no known exploitation of CVE-2025-46725 in the wild and no public exploit code.
Other vulnerabilities in langroid
Sources
Also known as GHSA-22c2-9gwg-mj59, PYSEC-2026-1531.