This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.
No vendor fix or workaround currently provided.
OpenCVE Recommended Actions
- Upgrade NLTK to the latest release that includes a fix for the traversal check (e.g., version 3.9.5 or later).
- Configure NLTK to enforce path validation by setting pathsec.ENFORCE=True, which blocks open calls when validation fails.
- Validate or sanitize any resource name passed to nltk.data.load() or nltk.data.find() before calling the function, rejecting percent‑encoded sequences and ensuring the path does not contain ".." components.
Generated by OpenCVE AI on June 30, 2026 at 02:20 UTC.
Tracking
Sign in to view the affected projects.
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-m42h-3232-vpv3 | nltk: Arbitrary File Read via Path Traversal in nltk.data.load() through Percent-Encoded Sequences |
Tue, 18 Aug 2026 09:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Title | Path Traversal via Percent-Encoding in nltk.data.find() and nltk.data.load() | nltk: NLTK: Information disclosure via path traversal vulnerability |
| CPEs | ||
| Vendors & Products |
Nltk nltk
|
|
| Metrics |
cvssV3_0
|
Tue, 18 Aug 2026 09:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | NLTK version 3.9.4 is vulnerable to a path traversal attack due to an incomplete fix for GitHub Issue #3504. The `_UNSAFE_NO_PROTOCOL_RE` regex in `nltk/data.py` checks for literal `../` sequences but fails to account for percent-encoded traversal sequences such as `..%2f`. The `url2pathname()` function decodes these sequences after the validation step, allowing an attacker to bypass the protection. This vulnerability enables an attacker to read arbitrary files accessible to the Python process by controlling the resource name parameter passed to `nltk.data.load()` or `nltk.data.find()`. The issue affects applications that rely on NLTK for resource loading, including NLP web applications, Jupyter notebooks, and CLI tools. The default `pathsec.ENFORCE=False` setting exacerbates the impact by not blocking the file read at the `open()` stage. | This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. |
Wed, 01 Jul 2026 00:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
Tue, 30 Jun 2026 14:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Tue, 30 Jun 2026 05:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Nltk
Nltk nltk/nltk |
|
| Vendors & Products |
Nltk
Nltk nltk/nltk |
Tue, 30 Jun 2026 01:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | NLTK version 3.9.4 is vulnerable to a path traversal attack due to an incomplete fix for GitHub Issue #3504. The `_UNSAFE_NO_PROTOCOL_RE` regex in `nltk/data.py` checks for literal `../` sequences but fails to account for percent-encoded traversal sequences such as `..%2f`. The `url2pathname()` function decodes these sequences after the validation step, allowing an attacker to bypass the protection. This vulnerability enables an attacker to read arbitrary files accessible to the Python process by controlling the resource name parameter passed to `nltk.data.load()` or `nltk.data.find()`. The issue affects applications that rely on NLTK for resource loading, including NLP web applications, Jupyter notebooks, and CLI tools. The default `pathsec.ENFORCE=False` setting exacerbates the impact by not blocking the file read at the `open()` stage. | |
| Title | Path Traversal via Percent-Encoding in nltk.data.find() and nltk.data.load() | |
| Weaknesses | CWE-22 | |
| References |
| |
| Metrics |
cvssV3_0
|
Status: REJECTED
Assigner: @huntr_ai
Published:
Updated: 2026-08-18T08:33:26.727Z
Reserved: 2026-06-15T06:24:30.096Z
Link: CVE-2026-12243
Updated:
Status : Rejected
Published: 2026-06-30T01:16:29.063
Modified: 2026-08-18T09:16:47.450
Link: CVE-2026-12243
OpenCVE Enrichment
Updated: 2026-06-30T05:00:03Z
-
CWE-22
Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Github GHSA