# CVE-2023-39662: llama-index arbitrary code execution in PandasQueryEngine

Source: https://junglewise.ai/threats/cve-2023-39662-llama-index-arbitrary-code-execution-in-pandasqueryengine  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2023-08-15. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2023-39662 · Severity: low · CVSS 3.1 · Published 2023-08-15

llama-index is a popular Python library for working with large language models and structured data. The PandasQueryEngine component, which processes data queries, fails to properly validate user input in its exec parameter, allowing attackers to inject and execute arbitrary Python code directly on the server. This could lead to full system compromise, data theft, or service disruption.

Technologies: [llama-index (PyPI)](https://junglewise.ai/threats/technologies/llama-index). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2023-39662 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2023-39662 being exploited in the wild.

**How severe is CVE-2023-39662?** Low severity, with a CVSS score of 3.1, published 15 August 2023.

**Which products and versions are affected?** llama-index (PyPI) ECOSYSTEM:introduced=0,fixed=0.7.14, ECOSYSTEM:introduced=0,fixed=0.9.14.

**Is there a fix for CVE-2023-39662?** Yes. llama-index (PyPI): upgrade to 0.7.14, 0.9.14 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2023-39662 attacked?** It is attacked over the network.

**Am I affected by CVE-2023-39662?** Check whether you run llama-index (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- llama-index (PyPI): upgrade to 0.7.14, 0.9.14 or later

  ```sh
  pip install "llama-index>=0.9.14"
  ```


## Technical details

The vulnerability is a code injection issue (CWE-74, CWE-94) in the PandasQueryEngine function's exec parameter. The vulnerable code path allows unsanitized user input to be passed directly to Python's exec() function, enabling arbitrary code execution without authentication. The attack vector is network-based with no user interaction required. An attacker can gain remote code execution on any system running a vulnerable version of llama-index that exposes the PandasQueryEngine to untrusted input. Patches are available in version 0.9.14 and later.

## Affected products

- LlamaIndex llama-index 0.0 to 0.9.13

## Identifiers

- CVE-2023-39662
- GHSA-2xxc-73fv-36f7
- PYSEC-2023-148

## Timeline

- 2023-08-15: disclosed
- 2023-08-15: patched: Fixed in version 0.9.14

## References

- [https://github.com/jerryjliu/llama_index/issues/7054](https://github.com/jerryjliu/llama_index/issues/7054)

## Related threats

- [PYSEC-2026-2606 - LlamaIndex vulnerable to data loss through hash collisions in its DocugamiReader class](https://junglewise.ai/threats/cve-2025-6211-llamaindex-vulnerable-to-data-loss-through-hash-collisions-in-its)
- [PYSEC-2026-1558 - LlamaIndex vulnerable to Path Traversal attack through its encode_image function](https://junglewise.ai/threats/cve-2025-6209-llamaindex-path-traversal-in-encode-image-function)
- [PYSEC-2026-1559 - LlamaIndex vulnerable to DoS attack through uncontrolled recursive JSON parsing](https://junglewise.ai/threats/cve-2025-5472-llamaindex-vulnerable-to-dos-attack-through-uncontrolled-recursive)
- [PYSEC-2026-1567 - LlamaIndex vulnerability in its ObsidianReader class can lead to Path Traversal exploit](https://junglewise.ai/threats/cve-2025-6210-llamaindex-obsidianreader-path-traversal-via-hardlinks)
- [PYSEC-2026-1568 - LlamaIndex is vulnerable to Path Traversal attack through its ObsidianReader class](https://junglewise.ai/threats/cve-2025-3046-llamaindex-is-vulnerable-to-path-traversal-attack-through-its)
