# nltk (PyPI) vulnerabilities

47 known vulnerabilities (6 critical, 29 high, 9 medium, 2 low), with the versions each affects and the releases that fix them.

## At a glance

- Latest release: 3.10.4 (Oct 21, 2026): no advisory with comparable ranges affects it; 43 advisories (CVE-2026-109956, CVE-2026-81727, CVE-2026-81726, …) can't be checked against versions
- Newest unaffected release: 3.10.4 (Oct 21, 2026), the latest release, not counting 43 advisories without comparable ranges
- Weekly downloads: 10.2M
- Dependents: 6,279
- Releases: 60 since 2.0.1 (May 15, 2012)
- Registry: https://pypi.org/project/nltk/
- Releases read: Nov 8, 2026

## Version timeline

Affected versions per advisory, in version order:

- CVE-2026-109956: its ranges can't be placed on these versions
- CVE-2026-81727: its ranges can't be placed on these versions
- CVE-2026-81726: its ranges can't be placed on these versions
- CVE-2026-81725: its ranges can't be placed on these versions
- CVE-2026-81724: its ranges can't be placed on these versions
- CVE-2026-81723: its ranges can't be placed on these versions
- CVE-2026-81722: its ranges can't be placed on these versions
- CVE-2026-80206: its ranges can't be placed on these versions
- CVE-2026-80205: its ranges can't be placed on these versions
- CVE-2026-79676: its ranges can't be placed on these versions
- CVE-2026-79675: its ranges can't be placed on these versions
- CVE-2026-79674: its ranges can't be placed on these versions
- CVE-2026-79657: its ranges can't be placed on these versions
- CVE-2026-78683: its ranges can't be placed on these versions
- CVE-2026-78682: its ranges can't be placed on these versions
- CVE-2026-78681: its ranges can't be placed on these versions
- CVE-2026-78680: its ranges can't be placed on these versions
- CVE-2026-70626: its ranges can't be placed on these versions
- CVE-2026-66393: its ranges can't be placed on these versions
- CVE-2026-65915: its ranges can't be placed on these versions
- CVE-2026-63312: its ranges can't be placed on these versions
- CVE-2026-63311: its ranges can't be placed on these versions
- CVE-2026-62388: its ranges can't be placed on these versions
- CVE-2026-62385: its ranges can't be placed on these versions
- CVE-2026-62384: 3.10.0 to 3.10.1 (3.10.2 is outside it)
- CVE-2026-62383: 3.10.0 to 3.10.1 (3.10.2 is outside it)
- CVE-2026-71514: 3.9.4 to 3.10.2 (3.10.3 is outside it)
- CVE-2026-71513: 3.10.0 to 3.10.2 (3.10.3 is outside it)
- CVE-2026-72818: its ranges can't be placed on these versions
- CVE-2026-12372: its ranges can't be placed on these versions
- CVE-2026-12261: its ranges can't be placed on these versions
- CVE-2026-12259: its ranges can't be placed on these versions
- CVE-2025-71408: its ranges can't be placed on these versions
- CVE-2026-12252: its ranges can't be placed on these versions
- CVE-2026-54293: its ranges can't be placed on these versions
- CVE-2026-33236: its ranges can't be placed on these versions
- CVE-2026-33231: its ranges can't be placed on these versions
- CVE-2026-33230: its ranges can't be placed on these versions
- CVE-2026-0846: its ranges can't be placed on these versions
- CVE-2026-0848: its ranges can't be placed on these versions
- CVE-2026-0847: its ranges can't be placed on these versions
- CVE-2025-14009: its ranges can't be placed on these versions
- CVE-2024-39705: its ranges can't be placed on these versions
- CVE-2021-3842: its ranges can't be placed on these versions
- CVE-2021-43854: its ranges can't be placed on these versions
- CVE-2021-3828: its ranges can't be placed on these versions
- CVE-2019-14751: its ranges can't be placed on these versions

## Advisories (47)

### [CVE-2026-109956](https://cve.now/CVE-2026-109956): NLTK through 3.10.3 Path Traversal via WekaClassifier Model Path

- Severity: High 8.3
- Published: Oct 13, 2026
- Affected: fixed in 3.10.4.

### [CVE-2026-81727](https://cve.now/CVE-2026-81727): NLTK before 3.10.3 Hardlink File Overwrite via downloader

- Severity: Medium 6.9
- Published: Aug 27, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-81726](https://cve.now/CVE-2026-81726): NLTK through 3.10.3 Path Traversal via Model-Artifact APIs

- Severity: High 8.3
- Published: Aug 27, 2026
- Affected: through 3.10.3; fixed in 3.10.3.

### [CVE-2026-81725](https://cve.now/CVE-2026-81725): NLTK before 3.10.3 Regular Expression Denial of Service via Pl196xCorpusReader

- Severity: Medium 6.3
- Published: Aug 27, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-81724](https://cve.now/CVE-2026-81724): NLTK before 3.10.3 Denial of Service via Uncontrolled Recursion

- Severity: Medium 6.9
- Published: Aug 27, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-81723](https://cve.now/CVE-2026-81723): NLTK before 3.10.3 Quadratic CPU Exhaustion via XMLCorpusView

- Severity: Medium 6.3
- Published: Aug 27, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-81722](https://cve.now/CVE-2026-81722): nltk PorterStemmer before 3.10.3 Quadratic-time DoS

- Severity: High 8.7
- Published: Aug 27, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-80206](https://cve.now/CVE-2026-80206): NLTK 3.10.2 Regular Expression Denial of Service via tgrep

- Severity: High 8.2
- Published: Aug 26, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-80205](https://cve.now/CVE-2026-80205): NLTK before 3.10.0 ReDoS via Text.findall() unvalidated regex

- Severity: High 8.7
- Published: Aug 26, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-79676](https://cve.now/CVE-2026-79676): NLTK before 3.10.3 Path Traversal via Symlink Bypass

- Severity: High 8.2
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-79675](https://cve.now/CVE-2026-79675): NLTK before 3.10.3 JVM Argument Injection via Per-Call Options

- Severity: Critical 9.3
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-79674](https://cve.now/CVE-2026-79674): NLTK 3.10.2 Path Traversal via corpus-reader constructors

- Severity: High 8.8
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-79657](https://cve.now/CVE-2026-79657): NLTK before 3.10.3 Remote Code Execution via Unsafe Pickle Deserialization

- Severity: Critical 9.3
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-78683](https://cve.now/CVE-2026-78683): NLTK before 3.10.0 Remote Code Execution via Unsafe Pickle Deserialization

- Severity: Critical 9.4
- Published: Aug 25, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-78682](https://cve.now/CVE-2026-78682): NLTK before 3.10.3 SSRF Protection Bypass via Proxy

- Severity: High 8.7
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-78681](https://cve.now/CVE-2026-78681): NLTK before 3.10.3 Entity Expansion DoS via ElementTree

- Severity: High 8.7
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-78680](https://cve.now/CVE-2026-78680): NLTK before 3.10.3 Arbitrary Code Execution via Graphviz dot Binary

- Severity: High 8.5
- Published: Aug 25, 2026
- Affected: fixed in 3.10.3.

### [CVE-2026-70626](https://cve.now/CVE-2026-70626): NLTK before 3.9.4 Symlink Escape via CorpusReader

- Severity: High 8.6
- Published: Aug 22, 2026
- Affected: fixed in 3.9.4.

### [CVE-2026-66393](https://cve.now/CVE-2026-66393): NLTK before 3.9.4 Denial of Service via JSONTaggedDecoder

- Severity: High 8.7
- Published: Aug 22, 2026
- Affected: fixed in 3.9.4.

### [CVE-2026-65915](https://cve.now/CVE-2026-65915): NLTK before 3.10.0 Arbitrary File Read via FileSystemPathPointer

- Severity: High 7.1
- Published: Aug 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-63312](https://cve.now/CVE-2026-63312): NLTK StreamBackedCorpusView Bypasses pathsec.ENFORCE Arbitrary File Read

- Severity: High 8.7
- Published: Aug 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-63311](https://cve.now/CVE-2026-63311): NLTK before 3.10.0 SSRF via DNS Resolution Failure

- Severity: Medium 6.9
- Published: Aug 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-62388](https://cve.now/CVE-2026-62388): NLTK before 3.10.0 Insecure Default Configuration in pathsec.py

- Severity: High 8.7
- Published: Aug 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-62385](https://cve.now/CVE-2026-62385): NLTK 3.9.4 Path Traversal via FrameNet and NKJP Readers

- Severity: High 8.2
- Published: Aug 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-62384](https://cve.now/CVE-2026-62384): NLTK FramenetCorpusReader Symlink Sandbox Bypass before 3.10.2

- Severity: High 8.7
- Published: Aug 22, 2026
- Affected: from 3.10.0, fixed in 3.10.2.
- Fixed in 3.10.2 (released Aug 5, 2026, 17 days before disclosure).
- The latest release, 3.10.4, is not affected.

### [CVE-2026-62383](https://cve.now/CVE-2026-62383): nltk IPIPANCorpusReader Symlink Arbitrary File Read

- Severity: Medium 6.8
- Published: Aug 22, 2026
- Affected: from 3.10.0, fixed in 3.10.2.
- Fixed in 3.10.2 (released Aug 5, 2026, 17 days before disclosure).
- The latest release, 3.10.4, is not affected.

### [CVE-2026-71514](https://cve.now/CVE-2026-71514): NLTK 3.9.4 through 3.10.2 Path Traversal via CrubadanCorpusReader pathsec Bypass

- Severity: Low 2.0
- Published: Aug 22, 2026
- Affected: from 3.9.4, fixed in 3.10.3.
- Fixed in 3.10.3 (released Aug 12, 2026, 10 days before disclosure).
- The latest release, 3.10.4, is not affected.

### [CVE-2026-71513](https://cve.now/CVE-2026-71513): NLTK 3.10.0 through 3.10.2 Remote Code Execution via AllowlistUnpickler Dotted-Name Bypass

- Severity: High 8.7
- Published: Aug 22, 2026
- Affected: from 3.10.0, fixed in 3.10.3.
- Fixed in 3.10.3 (released Aug 12, 2026, 10 days before disclosure).
- The latest release, 3.10.4, is not affected.

### [CVE-2026-72818](https://cve.now/CVE-2026-72818): NLTK TweetTokenizer URL Pattern Backtracks Catastrophically on Naked-Domain-Like Input

- Severity: High 8.7
- Published: Aug 20, 2026
- Affected: fixed in 3.10.1.

### [CVE-2026-12372](https://cve.now/CVE-2026-12372): Server-Side Request Forgery (SSRF) in nltk/nltk

- Severity: Low 3.7
- Published: Aug 9, 2026
- Affected: through 3.9.4; fixed in 3.10.0.

### [CVE-2026-12261](https://cve.now/CVE-2026-12261): Improper Access Control in nltk/nltk

- Severity: Medium 5.3
- Published: Aug 7, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-12259](https://cve.now/CVE-2026-12259): Improper Input Validation in nltk/nltk

- Severity: Medium 5.3
- Published: Aug 3, 2026
- Affected: through 3.9.4; fixed in 3.9.3.

### [CVE-2025-71408](https://cve.now/CVE-2025-71408): NLTK \< 3.9.3 Eval Injection via collocations.py Command-Line Arguments

- Severity: High 8.5
- Published: Jul 24, 2026
- Affected: fixed in 3.9.3.

### [CVE-2026-12252](https://cve.now/CVE-2026-12252): Untrusted JAR Code Execution in Multiple Stanford Interface Classes in nltk/nltk

- Severity: High 7.8
- Published: Jul 4, 2026
- Affected: fixed in 3.9.4.

### [CVE-2026-54293](https://cve.now/CVE-2026-54293): NLTK: URL-Encoded Path Traversal in nltk.data.load() Allows Arbitrary Local File Read

- Severity: High 7.5
- Published: Jun 22, 2026
- Affected: fixed in 3.10.0.

### [CVE-2026-33236](https://cve.now/CVE-2026-33236): NLTK has a Downloader Path Traversal Vulnerability (AFO) - Arbitrary File Overwrite

- Severity: High 8.1
- Published: Mar 20, 2026
- Affected: fixed in 3.9.4; through 3.9.2.

### [CVE-2026-33231](https://cve.now/CVE-2026-33231): NLTK has unauthenticated remote shutdown in nltk.app.wordnet\_app

- Severity: High 7.5
- Published: Mar 20, 2026
- Affected: fixed in 3.9.4.

### [CVE-2026-33230](https://cve.now/CVE-2026-33230): nltk Vulnerable to Cross-site Scripting

- Severity: Medium 6.1
- Published: Mar 20, 2026
- Affected: fixed in 3.9.4.

### [CVE-2026-0846](https://cve.now/CVE-2026-0846): Arbitrary File Read via Absolute Path Input in nltk.util.filestring()

- Severity: High 8.6
- Published: Mar 9, 2026
- Affected: fixed in 3.9.3; through 3.9.2.

### [CVE-2026-0848](https://cve.now/CVE-2026-0848): Arbitrary Code Execution in NLTK StanfordSegmenter via Untrusted JAR Loading

- Severity: Critical 10.0
- Published: Mar 5, 2026
- Affected: fixed in 3.9.3.

### [CVE-2026-0847](https://cve.now/CVE-2026-0847): Path Traversal in nltk/nltk

- Severity: High 8.6
- Published: Mar 4, 2026
- Affected: through 3.9.2.

### [CVE-2025-14009](https://cve.now/CVE-2025-14009): Zip Slip Vulnerability in nltk/nltk Leading to Remote Code Execution

- Severity: Critical 10.0
- Published: Feb 18, 2026
- Affected: fixed in 3.9.3.

### [CVE-2024-39705](https://cve.now/CVE-2024-39705): NLTK through 3.8.1 allows remote code execution if untrusted packages have pickled Python code, and the integrated data package download…

- Severity: Critical 9.8
- Published: Jun 27, 2024
- Affected: fixed in 3.9.

### [CVE-2021-3842](https://cve.now/CVE-2021-3842): Inefficient Regular Expression Complexity in nltk/nltk

- Severity: High 7.5
- Published: Jan 4, 2022
- Affected: fixed in 3.6.6.

### [CVE-2021-43854](https://cve.now/CVE-2021-43854): Inefficient Regular Expression Complexity in nltk

- Severity: High 7.5
- Published: Dec 23, 2021
- Affected: fixed in 3.6.5; fixed in 3.6.6.

### [CVE-2021-3828](https://cve.now/CVE-2021-3828): Inefficient Regular Expression Complexity in nltk/nltk

- Severity: High 7.5
- Published: Sep 27, 2021
- Affected: fixed in 3.6.4.

### [CVE-2019-14751](https://cve.now/CVE-2019-14751): NLTK Downloader before 3.4.5 is vulnerable to a directory traversal, allowing attackers to write arbitrary files via a ../ (dot dot slash)…

- Severity: Unrated
- Published: Aug 22, 2019
- Affected: fixed in 3.4.5; fixed in 3.4.5.

---

Source: cve.now
Built by [Sazabi](https://www.sazabi.com/?utm_source=cve-now&utm_medium=markdown), AI-native observability and security: automatic issue detection, plain-language log search and live dashboards.
Page: https://cve.now/packages/pypi/nltk
Site guide for agents: https://cve.now/llms.txt
Uses NVD data; not endorsed by NVD.
