CVE-2026-12261: NLTK downloader allows cross-package resource and model poisoning
(updated )
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.
References
- github.com/advisories/GHSA-ffj6-66c4-86gw
- github.com/nltk/nltk/commit/7a5740af89feeb739193db766e11e85dfe78339c
- github.com/nltk/nltk/pull/3625
- github.com/nltk/nltk/releases/tag/v3.10.0
- github.com/pypa/advisory-database/tree/main/vulns/nltk/PYSEC-2026-3954.yaml
- huntr.com/bounties/8b8c381e-08a8-4e4f-bb46-a320c96a364f
- nvd.nist.gov/vuln/detail/CVE-2026-12261
Code Behaviors & Features
Detect and mitigate CVE-2026-12261 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →