CVE-2026-0846 Arbitrary File Read via Absolute Path Input in nltk.util.filestring()
Attackers can read arbitrary system files by providing absolute or traversal paths to the filestring function in the nltk library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-0846?
CVE-2026-0846 is a high-severity path traversal vulnerability in nltk/nltk, published on 9 Mar 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
A vulnerability in the `filestring()` function of the `nltk.util` module in nltk version 3.9.2 allows arbitrary file read due to improper validation of input paths. The function directly opens files specified by user input without sanitization, enabling attackers to access sensitive system files by providing absolute paths or traversal paths. This vulnerability can be exploited locally or remotely, particularly in scenarios where the function is used in web APIs or other interfaces that accept user-supplied input.
Which versions are affected by CVE-2026-0846?
3 open source packages ship an affected version, including nltk. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
nltk PyPI | All versions to 3.9.2 | None |
nltk PyPI | All versions | 3.9.3 |
nltk PyPI | All versions | 3.9.3 |
Products include Nltk Nltk.
How do I fix CVE-2026-0846?
Upgrade nltk to 3.9.3 or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-0846 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-0846 exists.
Other vulnerabilities in nltk/nltk
- CVE-2026-0848 Arbitrary Code Execution in NLTK StanfordSegmenter via Untrusted JAR Loading
- CVE-2025-14009 Zip Slip Vulnerability in nltk/nltk Leading to Remote Code Execution
- CVE-2026-78683 NLTK before 3.10.0 Remote Code Execution via Unsafe Pickle Deserialization
- CVE-2026-79657 NLTK before 3.10.3 Remote Code Execution via Unsafe Pickle Deserialization
- CVE-2026-79675 NLTK before 3.10.3 JVM Argument Injection via Per-Call Options
Sources
Also known as DEBIAN-CVE-2026-0846, ECHO-dec7-e670-9a1b, GHSA-h8wq-7xc4-p3qx, PYSEC-2026-97.