NLTK before 3.9.4 Symlink Escape via CorpusReader
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
NLTK versions before 3.9.4 contain a symlink escape vulnerability in CorpusReader.open() that allows local attackers to read arbitrary files outside the corpus root. The vulnerability exists because path validation is lexical and does not account for symlink resolution, enabling attackers to place symlinks inside the corpus root to access files outside the intended boundary.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| nltk | nltk | before 3.9.4 | 3.9.4 | Patch available | CNA |
| — | nltk (PyPI) | before 3.9.4 | 3.9.4 | Patch available | GHSA-r6gq-whwq-mvg9 |
- nltk Vendornltk Affected before 3.9.4 Fixed in 3.9.4 Patch available CNA
- nltk (PyPI) Vendor— Affected before 3.9.4 Fixed in 3.9.4 Patch available GHSA-r6gq-whwq-mvg9
Remediation
- Fix · CNA nltk (nltk) Fixed in 3.9.4
- Fix · GHSA-r6gq-whwq-mvg9 nltk (PyPI) Fixed in 3.9.4 Advisory →
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
nltk 3.9.4
2 records Highest priority Priority HIGH 2 HIGH
Other records, highest priority first
- TI-2026-47152 NLTK before 3.9.4 Denial of Service via JSONTaggedDecoderPriority HIGH 77
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
Not affected: 5 products
- Exploit Intelligence
- Lightspeed Core
- OpenShift Lightspeed
- Red Hat Ansible Automation Platform 2
- Red Hat OpenShift AI (RHOAI)
Timeline
- 2026-10-02 Threatist record created from CVE-2026-70626
- 2026-10-03 Alias added: GHSA-r6gq-whwq-mvg9
References
More Nltk vulnerabilities
- TI-2026-00629 Arbitrary Code Execution in NLTK StanfordSegmenter via Untrusted JAR Loading CVSS 3.0CRITICAL 10.0
- TI-2025-12800 Zip Slip Vulnerability in nltk/nltk Leading to Remote Code Execution CVSS 3.0CRITICAL 10.0
- TI-2026-55173 NLTK before 3.10.3 JVM Argument Injection via Per-Call Options CVSS 4.0CRITICAL 9.3
- TI-2026-55155 NLTK before 3.10.3 Remote Code Execution via Unsafe Pickle Deserialization CVSS 4.0CRITICAL 9.3
- TI-2026-56370 nltk PorterStemmer before 3.10.3 Quadratic-time DoS CVSS 4.0HIGH 8.7
- TI-2026-55172 NLTK 3.10.2 Path Traversal via corpus-reader constructors CVSS 4.0HIGH 8.8
Sources
- CVE-2026-70626 · CVE Program
- CVE-2026-70626 · NVD
- FIRST EPSS
- GHSA-r6gq-whwq-mvg9 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-70626 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences