CVE-2025-6209
Arbitrary File Read through Path Traversal in run-llama/llama_index
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
7.5
Arbitrary File Read through Path Traversal in run-llama/llama_index
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
CVE-2025-6209- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-29
- Updated
- 2026-11-02
EUVDEUVD-2025-20223
7.5
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
EUVD-2025-20223- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-2rhq-96q8-4vjq
7.5
LlamaIndex vulnerable to Path Traversal attack through its encode_image function
A path traversal vulnerability exists in run-llama/llama_index versions 0.11.23 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
GHSA-2rhq-96q8-4vjq- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-29
- Updated
- 2026-11-02
NVD
7.5
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
CVE-2025-6209- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-29
- Updated
- 2026-11-02
OSV
7.5
Arbitrary File Read through Path Traversal in run-llama/llama_index
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
CVE-2025-6209- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-29
- Updated
- 2026-11-02
OSVGHSA-2rhq-96q8-4vjq
7.5
LlamaIndex vulnerable to Path Traversal attack through its encode_image function
A path traversal vulnerability exists in run-llama/llama_index versions 0.11.23 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
GHSA-2rhq-96q8-4vjq- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-29
- Updated
- 2026-11-02
OSVPYSEC-2026-1558
7.5
LlamaIndex vulnerable to Path Traversal attack through its encode_image function
A path traversal vulnerability exists in run-llama/llama_index versions 0.11.23 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
PYSEC-2026-1558- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVPYSEC-2025-65 No score
A path traversal vulnerability exists in run-llama/llama_index versions 0.12.27 through 0.12.40, specifically within the encode_image function in generic_utils.py. This vulnerability allows an attacker to manipulate the image_path input to read arbitrary files on the server, including sensitive system files. The issue arises due to improper validation or sanitization of the file path, enabling path traversal sequences to access files outside the intended directory. The vulnerability is fixed in version 0.12.41.
- Record
PYSEC-2025-65- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
llama-index-corePyPI |
0.11.23 up to 0.12.41 | 0.12.41 |
llama-index-corePyPI |
0.11.23 up to 0.12.41, plus listed versions 0.12.00.12.10.12.100.12.10.post10.12.11 Show 45 moreShow less0.12.120.12.130.12.140.12.150.12.160.12.16.post10.12.170.12.180.12.190.12.20.12.200.12.210.12.220.12.230.12.23.post10.12.23.post20.12.240.12.24.post10.12.250.12.260.12.270.12.27a10.12.27a20.12.27a30.12.280.12.290.12.30.12.300.12.310.12.320.12.330.12.33.post10.12.340.12.34.post10.12.34a10.12.34a20.12.34a30.12.34a40.12.34a50.12.350.12.360.12.370.12.380.12.390.12.4 |
0.12.41 |
llama-indexPyPI |
0.12.27 up to 0.12.41, plus listed versions 0.12.280.12.290.12.300.12.310.12.32 Show 8 moreShow less0.12.330.12.340.12.350.12.360.12.370.12.380.12.390.12.40 |
0.12.41 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-6209 is a high vulnerability (CVSS 7.5) in Llamaindex, published July 7, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.62%, the 49th percentile. Fixed in llama-index-core 0.12.41.
References
huntr.com/bounties/e89d14f8-bfe8-4c9a-bb2a-656c01cc9a68
github.com/run-llama/llama_index/commit/cdeaab91a204d1c3527f177dac37390327aef274
nvd.nist.gov/vuln/detail/CVE-2025-6209
github.com/pypa/advisory-database/tree/main/vulns/llama-index/PYSEC-2025-65.yaml
github.com/advisories/GHSA-2rhq-96q8-4vjq
github.com/CVEProject/cvelistV5/tree/main/cves/2025/6xxx/CVE-2025-6209.json
github.com/run-llama/llama_index
pypi.org/project/llama-index-core
Left out here: 6 versions. The JSON record has them.