CyberSecBulletin

Nltk vulnerabilities

We track 36 vulnerabilities in Nltk products across 2 products. 36 are rated high or critical, and none are known to be exploited. The most recent was published on November 13, 2026.

36vulnerabilities
5critical
31high
0exploited
7.9average CVSS score

Latest Nltk vulnerabilities

  • 7.8 High severity

    nltk: Untrusted Search Path

    CVE-2026-128134Nltk

    NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing. Prior to 3.10.4, nltk.parse.dependencygraph.dot2img resolves the Graphviz dot executable thro

  • 7.5 High severity

    nltk: Improper Link Resolution Before File Access

    CVE-2026-126304Nltk

    NLTK from 3.10.0 before 3.10.4 contains a symlink escape vulnerability in YCOECorpusReader that allows attackers to read files outside the corpus root by planting psd or pos directory symlinks. Attackers controlling a YCOE corpus can make parsed_sents() and ta

  • 7.5 High severity

    nltk: Uncontrolled Resource Consumption

    CVE-2026-126303Nltk

    NLTK before 3.10.4 contains an uncontrolled resource consumption vulnerability in SteppingRecursiveDescentParser.parse() that lacks any max_time deadline or step limit. Attackers influencing the grammar can supply an ambiguous self-embedding grammar and short

  • 7.5 High severity

    nltk: Uncontrolled Resource Consumption

    CVE-2026-126299Nltk

    NLTK before 3.10.4 contains a denial of service vulnerability in the CCG lexicon parser fromstring that allows remote attackers to exhaust CPU by supplying wide inputs. Attackers can submit lexicon text with long flat bracket bodies or operator chains, trigger

  • 7.5 High severity

    nltk: Uncontrolled Resource Consumption

    CVE-2026-126298Nltk

    NLTK before 3.10.4 contains a denial of service vulnerability in Tree.chomsky_normal_form that allows remote attackers to exhaust CPU through quadratic-time right-factor binarization using list.pop(0). Attackers can supply a wide flat treebank tree parsed by T

  • 7.5 High severity

    nltk: Uncontrolled Resource Consumption

    CVE-2026-126297Nltk

    NLTK before 3.10.4 contains a quadratic-time denial of service vulnerability in ConllCorpusReader._get_srl_instances that allows remote attackers to exhaust CPU through nested span rescans. Attackers can supply a crafted CoNLL SRL corpus with many predicates a

  • 7.0 High severity

    nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-109956Nltk

    NLTK through 3.10.3 contains a path traversal vulnerability in WekaClassifier that allows attackers to bypass nltk.pathsec containment by supplying unvalidated model paths. Attackers controlling the model_filename or model argument can make the weka JVM write

  • 7.1 High severity

    nltk: Improper Link Resolution Before File Access

    CVE-2026-81727Nltk

    NLTK versions before 3.10.3 contain a filesystem containment bypass vulnerability in the Downloader.download and Downloader.incr_download methods that allows attackers to overwrite files outside the install root through pre-existing hardlinks. Attackers with w

  • 7.0 High severity

    nltk: External Control of File Name or Path

    CVE-2026-81726Nltk

    NLTK through 3.10.3 contains a path traversal vulnerability in model-artifact APIs that bypass pathsec enforcement by using raw file operations on caller-controlled paths. Attackers can read or write files outside allowed sandbox roots through TransitionParser

  • 7.5 High severity

    nltk: Inefficient Algorithmic Complexity

    CVE-2026-81722Nltk

    nltk PorterStemmer in versions <= 3.10.2 (fixed in 3.10.3) contains an inefficient-algorithmic-complexity denial of service in PorterStemmer.stem(). The _is_consonant() helper walks backward over the entire run of trailing 'y' characters on every call, and _me

  • 7.5 High severity

    nltk: Inefficient Regular Expression Complexity

    CVE-2026-80205Nltk

    NLTK versions before 3.10.0 contain a regular expression denial of service vulnerability in Text.findall() and TokenSearcher.findall() methods that accept user-supplied regular expressions without validation or timeout. Attackers can supply crafted regex patte

  • 9.8 Critical severity

    nltk: Improper Neutralization of Argument Delimiters in a Command

    CVE-2026-79675Nltk

    NLTK before 3.10.3 fails to validate JVM options passed through the per-call options parameter in the java() function, allowing attackers to inject dangerous JVM flags. Attackers can supply malicious options like -agentpath, -javaagent, or @argfile to Stanford

  • 8.2 High severity

    nltk: External Control of File Name or Path

    CVE-2026-79674Nltk

    NLTK versions before 3.10.3 contain a path sandbox bypass vulnerability in corpus-reader constructors that allows attackers to read files outside the intended data root. Attackers can supply arbitrary corpus root paths to LinThesaurusCorpusReader and PanLexLit

  • 9.8 Critical severity

    nltk: Deserialization of Untrusted Data

    CVE-2026-79657NltkEPSS 1.55%

    NLTK versions before 3.10.3 contain a remote code execution vulnerability in allowlisted pickle loaders that trust entire module namespaces instead of specific safe callables. Attackers can craft malicious pickle payloads invoking dangerous in-namespace functi

  • 9.6 Critical severity

    nltk: Deserialization of Untrusted Data

    CVE-2026-78683Nltk

    NLTK before 3.10.0 (affected versions <=3.9.4) contains an unsafe pickle deserialization vulnerability in the TransitionParser.parse() method (nltk/parse/transitionparser.py). The method calls pickle_load() with the default restricted=False, routing deserializ

  • 7.5 High severity

    nltk: Server-Side Request Forgery

    CVE-2026-78682Nltk

    NLTK before 3.10.3 contains a server-side request forgery vulnerability in nltk.pathsec.urlopen (and callers nltk.data.load, nltk.downloader.Downloader.index/download) when an HTTP proxy is configured. pathsec.urlopen validates the requested hostname locally,

  • 7.5 High severity

    nltk: Improper Restriction of Recursive Entity References in DTDs

    CVE-2026-78681Nltk

    NLTK versions before 3.10.3 use xml.etree.ElementTree to parse XML in multiple modules, which honors entity declarations in document DTDs. Attackers can craft XML payloads with nested entity declarations that expand from hundreds of bytes to megabytes in memor

  • 7.8 High severity

    nltk: Untrusted Search Path

    CVE-2026-78680Nltk

    NLTK versions before 3.10.3 fail to use validated absolute paths when invoking the Graphviz dot binary in dependencygraph.dot2img and AlignedSent._repr_svg_, allowing attackers to execute arbitrary code by placing a malicious dot binary in the search path or c

  • 7.5 High severity

    nltk: Uncontrolled Recursion

    CVE-2026-66393Nltk

    NLTK versions before 3.9.4 contain an unbounded recursion vulnerability in JSONTaggedDecoder.decode_obj() that allows attackers to cause denial of service by supplying deeply nested JSON structures. Attackers can craft JSON payloads exceeding the recursion lim

  • 7.5 High severity

    nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-63312Nltk

    NLTK before 3.10.0 contains an arbitrary local file read vulnerability in StreamBackedCorpusView that bypasses pathsec.ENFORCE by calling builtins.open() directly instead of pathsec.open(). Attackers who control the fileid argument can read arbitrary local fil

  • 7.5 High severity

    nltk: Initialization of a Resource with an Insecure Default

    CVE-2026-62388Nltk

    NLTK versions before 3.10.0 default to ENFORCE=False in pathsec.py, causing all security validation functions to emit warnings instead of raising exceptions. Attackers can bypass path traversal and pickle deserialization protections by exploiting the disabled

  • 7.5 High severity

    nltk: External Control of File Name or Path

    CVE-2026-62385Nltk

    NLTK versions before 3.10.0 contain a path traversal vulnerability in FramenetCorpusReader and NKJPCorpusReader that allows attackers to parse XML files outside the corpus root by supplying unsafe selectors or poisoned index state. Attackers can exploit frame_

  • 7.5 High severity

    nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-62384Nltk

    NLTK versions before 3.10.2 contain a symlink-based sandbox bypass in FramenetCorpusReader that allows attackers to read arbitrary XML files outside the corpus root. Attackers can place symlinks with names containing no path separators inside the corpus subdir

  • 8.8 High severity

    nltk: Deserialization of Untrusted Data

    CVE-2026-71513NltkEPSS 1.1%

    NLTK before 3.10.3 contains a remote code execution vulnerability in AllowlistUnpickler that validates only the pickle module string and not the global name, allowing attackers to resolve dotted names by attribute traversal to callables outside the allowlisted

  • 7.5 High severity

    nltk: Inefficient Regular Expression Complexity

    CVE-2026-72818Nltk

    The URLS regular expression in nltk/tokenize/casual.py, compiled into TweetTokenizer.WORD_RE and applied by TweetTokenizer.tokenize, contains a naked-domain branch whose domain-label prefix [a-z0-9]+(?:[.\-][a-z0-9]+)* is unbounded. Input consisting of many al

  • 7.8 High severity

    ntlk: Improper Neutralization of Directives in Dynamically Evaluated Code

    CVE-2025-71408Ntlk

    NLTK (Natural Language Toolkit) before version 3.9.3 contains an eval injection vulnerability in the nltk.collocations module that allows an attacker who controls command-line arguments to execute arbitrary Python code. When collocations.py is invoked directly

  • 7.8 High severity

    nltk/nltk: Improper Control of Generation of Code

    CVE-2026-12252Nltk

    In nltk/nltk versions 3.9.3 and earlier, five Stanford interface classes (StanfordPOSTagger, StanfordNERTagger, StanfordParser, StanfordDependencyParser, and StanfordNeuralDependencyParser) are vulnerable to untrusted JAR code execution. These classes accept u

  • 7.5 High severity

    nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-54293Nltk

    NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing. Prior to 3.10.0-rc1, nltk.data.load() in NLTK is vulnerable to path traversal via URL-encoded

  • 7.5 High severity

    nltk/nltk: Missing Authentication for Critical Functionality

    CVE-2026-12199Nltk

    A vulnerability in `nltk.app.wordnet_app` up to version 3.9.3 allows unauthenticated remote shutdown of the local WordNet Browser HTTP server when started in its default mode. The server listens on all interfaces and processes a specific unauthenticated GET re

  • 8.1 High severity

    nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-33236Nltk

    NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing. In versions 3.9.3 and prior, the NLTK downloader does not validate the `subdir` and `id` attr

  • 7.5 High severity

    nltk: Missing Authentication for Critical Functionality

    CVE-2026-33231NltkEPSS 1.26%

    NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing. In versions 3.9.3 and prior, `nltk.app.wordnet_app` allows unauthenticated remote shutdown of

  • 7.5 High severity

    nltk/nltk: Absolute Path Traversal

    CVE-2026-0846Nltk

    A vulnerability in the `filestring()` function of the `nltk.util` module in nltk version 3.9.2 allows arbitrary file read due to improper validation of input paths. The function directly opens files specified by user input without sanitization, enabling attack

  • 10.0 Critical severity

    NLTK versions <=3.9.2 are vulnerable to arbitrary code execution due to improper input…

    CVE-2026-0848Nltk

    NLTK versions <=3.9.2 are vulnerable to arbitrary code execution due to improper input validation in the StanfordSegmenter module. The module dynamically loads external Java .jar files without verification or sandboxing. An attacker can supply or replace the J

  • 7.5 High severity

    nltk/nltk: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2026-0847NltkEPSS 1%

    A vulnerability in NLTK versions up to and including 3.9.2 allows arbitrary file read via path traversal in multiple CorpusReader classes, including WordListCorpusReader, TaggedCorpusReader, and BracketParseCorpusReader. These classes fail to properly sanitize

  • 8.8 High severity

    nltk/nltk: Improper Control of Generation of Code

    CVE-2025-14009NltkEPSS 1.02%

    A critical vulnerability exists in the NLTK downloader component of nltk/nltk, affecting all versions. The _unzip_iter function in nltk/downloader.py uses zipfile.extractall() without performing path validation or security checks. This allows attackers to craf

  • 9.8 Critical severity

    nltk: Deserialization of Untrusted Data

    CVE-2024-39705NltkEPSS 1.35%

    NLTK through 3.8.1 allows remote code execution if untrusted packages have pickled Python code, and the integrated data package download functionality is used. This affects, for example, averaged_perceptron_tagger and punkt.