Bug 2494933 - CVE-2026-12243 python-nltk: NLTK: Information disclosure via path traversal vulnerability [epel-all]
Summary: CVE-2026-12243 python-nltk: NLTK: Information disclosure via path traversal v...
Keywords:
Status: NEW
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: python-nltk
Version: epel10
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
Assignee: Romain Geissler
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: {"flaws": ["0a4c3ca5-d1ae-4566-9540-4...
Depends On:
Blocks: CVE-2026-12243
TreeView+ depends on / blocked
 
Reported: 2026-06-30 14:10 UTC by jkelly
Modified: 2026-06-30 14:10 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description jkelly 2026-06-30 14:10:39 UTC
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

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.


Note You need to log in before you can comment on or make changes to this bug.