3.3
LOW CVSS 3.1
CVE-2026-71514
NLTK 3.9.4 through 3.10.2 Path Traversal via CrubadanCorpusReader pathsec Bypass
Description

NLTK 3.9.4 through 3.10.2 contains a path traversal vulnerability in CrubadanCorpusReader. _load_lang_ngrams joins the corpus root with crubadan_code, the column-0 value read from the corpus table.txt mapping file, and opens the result with the builtin open() rather than the pathsec-validated opener, so os.path.join discards the root when that value is absolute and the read escapes the corpus directory without the containment check nltk.pathsec applies when ENFORCE is set. An attacker who controls a corpus package can disclose file contents outside the corpus root through lang_freq, limited to paths ending in -3grams.txt whose contents parse as token count lines.

INFO

Published Date :

Aug. 22, 2026, 2:16 p.m.

Last Modified :

Oct. 14, 2026, 7:10 p.m.

Remotely Exploit :

No
Affected Products

The following products are affected by CVE-2026-71514 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Nltk nltk
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 134c704f-9b21-4f2e-91b3-4a467353bcc0
CVSS 3.1 LOW 83251b91-4cc7-4094-a5c7-464a1b83ea10
CVSS 3.1 LOW [email protected]
CVSS 3.1 LOW MITRE-CVE
CVSS 3.1 LOW [email protected]
CVSS 4.0 LOW 83251b91-4cc7-4094-a5c7-464a1b83ea10
CVSS 4.0 LOW [email protected]
Solution
Update NLTK to fix path traversal vulnerability in CrubadanCorpusReader.
  • Update NLTK to a version later than 3.10.2.
  • Verify corpus integrity and access controls.
  • Ensure path validation is enforced.
References to Advisories, Solutions, and Tools

Here, you will find a curated list of external links that provide in-depth information, practical solutions, and valuable tools related to CVE-2026-71514.

URL Resource
https://github.com/nltk/nltk Product
https://github.com/nltk/nltk/blob/v3.10.2/nltk/corpus/reader/crubadan.py#L90-L98 Patch
https://github.com/nltk/nltk/commit/10d34b3f4fe3fec74b76527a409eb0acbac2e8ab Patch
https://www.vulncheck.com/advisories/nltk-through-path-traversal-via-crubadancorpusreader-pathsec-bypass Third Party Advisory
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-71514 is associated with the following CWEs:

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-71514 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-71514 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Translated by [email protected]

    Oct. 14, 2026

    Action Type Old Value New Value
    Added Translation Title: nltk, Description: NLTK 3.9.4 hasta 3.10.2 contiene una vulnerabilidad de salto de ruta en CrubadanCorpusReader. _load_lang_ngrams une la raíz del corpus con crubadan_code, el valor de la columna 0 leído del archivo de mapeo corpus table.txt, y abre el resultado con la función incorporada open() en lugar del abridor validado por pathsec, por lo que os.path.join descarta la raíz cuando ese valor es absoluto y la lectura escapa del directorio del corpus sin la verificación de contención que nltk.pathsec aplica cuando ENFORCE está configurado. Un atacante que controla un paquete de corpus puede divulgar el contenido de archivos fuera de la raíz del corpus a través de lang_freq, limitado a rutas que terminan en -3grams.txt cuyo contenido se analiza como líneas de recuento de tokens.
  • Initial Analysis by [email protected]

    Sep. 02, 2026

    Action Type Old Value New Value
    Added CVSS V3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
    Added CPE Configuration OR *cpe:2.3:a:nltk:nltk:*:*:*:*:*:*:*:* versions from (including) 3.9.4 up to (including) 3.10.2
    Added Reference Type VulnCheck: https://github.com/nltk/nltk Types: Product
    Added Reference Type VulnCheck: https://github.com/nltk/nltk/blob/v3.10.2/nltk/corpus/reader/crubadan.py#L90-L98 Types: Patch
    Added Reference Type VulnCheck: https://github.com/nltk/nltk/commit/10d34b3f4fe3fec74b76527a409eb0acbac2e8ab Types: Patch
    Added Reference Type VulnCheck: https://www.vulncheck.com/advisories/nltk-through-path-traversal-via-crubadancorpusreader-pathsec-bypass Types: Third Party Advisory
  • CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0

    Aug. 24, 2026

    Action Type Old Value New Value
    Added SSVC {'id': 'CVE-2026-71514', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-08-24T19:17:52.544723Z'}
  • New CVE Received by [email protected]

    Aug. 22, 2026

    Action Type Old Value New Value
    Added Affected [{'vendor': 'nltk', 'product': 'nltk', 'versions': [{'status': 'affected', 'version': '3.9.4', 'lessThan': '3.10.3', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '3.10.3', 'versionType': 'semver'}], 'packageURL': 'pkg:pypi/nltk', 'defaultStatus': 'unaffected'}]
    Added Description NLTK 3.9.4 through 3.10.2 contains a path traversal vulnerability in CrubadanCorpusReader. _load_lang_ngrams joins the corpus root with crubadan_code, the column-0 value read from the corpus table.txt mapping file, and opens the result with the builtin open() rather than the pathsec-validated opener, so os.path.join discards the root when that value is absolute and the read escapes the corpus directory without the containment check nltk.pathsec applies when ENFORCE is set. An attacker who controls a corpus package can disclose file contents outside the corpus root through lang_freq, limited to paths ending in -3grams.txt whose contents parse as token count lines.
    Added CVSS V4.0 AV:L/AC:H/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
    Added CVSS V3.1 AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
    Added CWE CWE-22
    Added Reference https://github.com/nltk/nltk
    Added Reference https://github.com/nltk/nltk/blob/v3.10.2/nltk/corpus/reader/crubadan.py#L90-L98
    Added Reference https://github.com/nltk/nltk/commit/10d34b3f4fe3fec74b76527a409eb0acbac2e8ab
    Added Reference https://www.vulncheck.com/advisories/nltk-through-path-traversal-via-crubadancorpusreader-pathsec-bypass
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.