LanceDocChatAgent uses pandas eval() through compute_from_docs()
:
https://github.com/langroid/langroid/blob/18667ec7e971efc242505196f6518eb19a0abc1c/langroid/vector_store/base.py#L136-L150
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.
{ "nvd_published_at": "2025-05-20T18:15:46Z", "cwe_ids": [ "CWE-94" ], "severity": "HIGH", "github_reviewed": true, "github_reviewed_at": "2025-05-20T18:01:52Z" }