GitHub Advisoryadvisory · PyPI
GHSA-ffj6-66c4-86gw NLTK downloader allows cross-package resource and model poisoning
MEDIUM
Official page ↗
- Aliases
- CVE-2026-12261
- Ecosystem
- PyPI
- Packages
- nltk
- Severity
- Moderate
- CVSS vector
- CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N
- Weaknesses
- CWE-284
- Reviewed
- 2026-10-02
Affected packages
• PyPI nltk: < 3.10.0 → fixed in 3.10.0
Description
A vulnerability in `nltk.downloader` in nltk/nltk versions <= 3.9.4 allows for cross-package resource and model poisoning. The downloader extracts package archives into shared namespaces such as `corpora/` and `taggers/` instead of package-isolated roots, and validates package integrity only after the archive has been written and extracted. This design flaw enables one package to overwrite another package's trusted resources within the same namespace, making the changes immediately active through ordinary NLTK APIs. This issue persists across fresh interpreter restarts and can affect downstream workflows, including machine learning pipelines and reproducibility-sensitive environments.
Related
Alias · CVE (1)
- CVE-2026-12261 A vulnerability in `nltk.downloader` in nltk/nltk versions <= 3.9.4 allows for cross-package resource and model poisoning. vulnerability
Weakness · CWE (1)
- CWE-284 Improper Access Control weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-12261 advisory
- https://github.com/nltk/nltk/pull/3625 web
- https://github.com/nltk/nltk/commit/7a5740af89feeb739193db766e11e85dfe78339c web
- https://github.com/nltk/nltk package
- https://github.com/nltk/nltk/releases/tag/v3.10.0 web
- https://github.com/pypa/advisory-database/tree/main/vulns/nltk/PYSEC-2026-3954.yaml web
- https://huntr.com/bounties/8b8c381e-08a8-4e4f-bb46-a320c96a364f web