PatchSiren

PatchSiren cyber security CVE debrief

CVE-2025-14009 nltk CVE debrief

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.

Vendor
nltk
Product
nltk/nltk
CVSS
HIGH 8.8
CISA KEV
Not listed in stored evidence
Original CVE published
2026-02-18
Original CVE updated
2026-07-15
Advisory published
2026-02-18
Advisory updated
2026-07-15

Who should care

This vulnerability should be of high concern to developers and users of the NLTK library, as it can lead to full system compromise, including file system access, network access, and potential persistence mechanisms. Organizations using NLTK in their applications or products should prioritize patching this vulnerability to prevent potential attacks.

Technical summary

The vulnerability is caused by the lack of path validation and security checks in the _unzip_iter function of nltk/downloader.py. This function uses zipfile.extractall() to extract downloaded packages without validation, allowing attackers to craft malicious zip packages that can execute arbitrary code when extracted. The vulnerability is particularly severe because NLTK assumes all downloaded packages are trusted, and malicious packages can contain Python files that are executed automatically upon import.

Defensive priority

High priority should be given to patching this vulnerability, as it can lead to remote code execution and full system compromise. Organizations should ensure that all instances of NLTK are updated to a patched version as soon as possible.

Recommended defensive actions

  • Update NLTK to a patched version
  • Implement additional security checks for downloaded packages
  • Monitor for suspicious activity related to NLTK usage
  • Restrict access to NLTK downloader functionality
  • Perform regular vulnerability scans and updates

Evidence notes

The CVE-2025-14009 vulnerability was reported by security researchers and has been confirmed by the NVD. The vulnerability affects all versions of NLTK and has a CVSS score of 8.8, indicating a high severity. The vulnerability is caused by the lack of path validation and security checks in the _unzip_iter function of nltk/downloader.py.

Sources and references

Verified primary and authoritative sources

  • CVE-2025-14009 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2025-14009

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2025-14009 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2025-14009

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://huntr.com/bounties/49ecbc02-054e-4470-b2e0-b267936cc4e4

    [email protected] - Exploit, Third Party Advisory

  • Source reference

    Unverified legacy reference

    URL: https://access.redhat.com/errata/RHSA-2026:10184

    0b0ca135-0b70-47e7-9f44-1890c2a1c46c

  • Source reference

    Unverified legacy reference

    URL: https://access.redhat.com/security/cve/CVE-2025-14009

    0b0ca135-0b70-47e7-9f44-1890c2a1c46c

  • Source reference

    Unverified legacy reference

    URL: https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-14009.json

    0b0ca135-0b70-47e7-9f44-1890c2a1c46c

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.