
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-12259 is a checksum validation bypass vulnerability in the NLTK (Natural Language Toolkit) Python library, specifically in the nltk.downloader.Downloader._download_package() function. In NLTK version 3.9.4, downloaded package bytes are written to disk and may be extracted before SHA-256 or MD5 checksum validation is enforced, enabling a supply-chain-style tampering attack. The vulnerability was published on August 3, 2026, and carries a CVSS v3.0 base score of 5.3 (Medium) (GitHub Advisory, Feedly).
The root cause is classified under CWE-494 (Download of Code Without Integrity Check) and CWE-354 (Improper Validation of Integrity Check Value): the _download_package() function performs disk writes and archive extraction prior to verifying the downloaded content's SHA-256 or MD5 checksum. An attacker positioned as a compromised mirror operator, malicious proxy, or via other source-substitution techniques (e.g., DNS hijacking, BGP hijacking, or adversary-in-the-middle) can substitute the legitimate package response body at info.url with attacker-controlled content. Exploitation requires user interaction (a user or automated process must trigger a package download) and high attack complexity, as the attacker must be able to intercept or substitute the download source (GitHub Advisory, Feedly). The vulnerability was reported via the Huntr bug bounty platform (Huntr).
Successful exploitation results in the installation of attacker-controlled corpus or model files into the victim's NLTK data directory, with no direct confidentiality or availability impact but a high integrity impact. Downstream applications and users that trust NLTK-downloaded corpora or models may unknowingly process or execute malicious content, potentially leading to data poisoning, model manipulation, or further compromise of NLP pipelines. The scope is unchanged, meaning the impact is confined to the affected component, but the trust relationship between NLTK and its downstream consumers amplifies the real-world risk (GitHub Advisory, Feedly).
There is no known public proof-of-concept exploit and no evidence of in-the-wild exploitation at this time (Feedly). The EPSS score is approximately 0.1% (1st percentile), indicating a very low near-term exploitation probability. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation is non-trivial, requiring the attacker to control or compromise a download mirror, proxy, or network path used by the victim (GitHub Advisory).
nltk.download(), particularly in automated pipelines or CI/CD environments that fetch corpora or models from NLTK's default servers or configured mirrors.info.url..zip corpus file) in the HTTP response with a crafted archive containing malicious content — such as poisoned training data, backdoored model files, or scripts that may be executed by downstream processing.nltk.download('<package_name>'), which invokes _download_package() and writes and extracts the attacker-supplied bytes to disk before checksum validation occurs.nltk.download() calls; TLS certificate mismatches for nltk.org or configured mirror hosts; unusual proxy traffic intercepting NLTK download requests.~/nltk_data/) containing corpus or model files with checksums that do not match those listed in the official NLTK index; unexpected file types or executables within extracted NLTK package directories; recently modified or newly created files in ~/nltk_data/ that were not explicitly downloaded by the user.nltk.download() calls completing without checksum validation errors despite network anomalies; Python process logs indicating extraction of archives from unexpected source URLs.Users should update NLTK to a patched version that enforces checksum validation before writing or extracting downloaded packages to disk; consult the official NLTK repository and GitHub Advisory for the specific fixed version once published (GitHub Advisory). As interim workarounds: ensure all NLTK package downloads use HTTPS with strict certificate validation; restrict download sources to trusted, official NLTK mirrors only; and manually verify the SHA-256 or MD5 checksums of downloaded packages against the official NLTK index before use. Organizations should also consider pinning NLTK data packages to known-good versions and auditing existing ~/nltk_data/ directories for unexpected or modified files (Feedly).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."