GitHub Advisoryadvisory · PyPI

GHSA-7p94-766c-hgjp NLTK has a Zip Slip Vulnerability

CRITICAL Published 2026-02-18 Modified 2026-06-06 Official page ↗
Aliases
CVE-2025-14009
Ecosystem
PyPI
Packages
nltk
Severity
Critical
CVSS vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Weaknesses
CWE-94
Reviewed
2026-02-19

Affected packages

• PyPI nltk: < 3.9.3 → fixed in 3.9.3

Description

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 craft malicious zip packages that, when downloaded and extracted by NLTK, can execute arbitrary code. The vulnerability arises because NLTK assumes all downloaded packages are trusted and extracts them without validation. If a malicious package contains Python files, such as __init__.py, these files are executed automatically upon import, leading to remote code execution. This issue can result in full system compromise, including file system access, network access, and potential persistence mechanisms.

Related

Alias · CVE (1)

  • CVE-2025-14009 A critical vulnerability exists in the NLTK downloader component of nltk/nltk, affecting all versions. vulnerability

Weakness · CWE (1)

  • CWE-94 Improper Control of Generation of Code weakness

References