Description
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 functions like ReppTokenizer._execute and numpy.f2py.crackfortran.myeval through pickle REDUCE to execute arbitrary commands during model or tokenizer artifact loading.
Published: 2026-08-25
Score: 9.3 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

NLTK versions earlier than 3.10.3 allow attackers to craft malicious pickle payloads that call dangerous functions during model or tokenizer artifact loading. The vulnerability stems from allowlisted pickle loaders that trust entire module namespaces rather than specific safe callables, enabling redirection to functions such as ReppTokenizer._execute or numpy.f2py.crackfortran.myeval via the REDUCE mechanism. Successful exploitation results in arbitrary code execution on the system where the library loads the payload, compromising confidentiality and integrity.

Affected Systems

All installations of the NLTK Python library with a version prior to 3.10.3 are affected. This includes any environment that imports nltk and uses model or tokenizer artifact loading from potentially untrusted sources. The vulnerability applies across operating systems where the library is used, as the issue is within the Python package rather than platform‑specific code.

Risk and Exploitability

The CVSS score of 9.3 indicates high severity, while the EPSS score is not available, suggesting limited data on the exploit rate but the potential exists for exploitation wherever untrusted artifacts are loaded. The vulnerability is not listed in CISA KEV, so there is no current evidence of widespread exploitation. Attackers can achieve remote code execution by delivering a crafted pickle file, which the library deserializes during normal operation; this inference suggests the attack vector is via trusted user data or external input that triggers artifact loading. Organizations that expose NLTK functionality over a network or accept third‑party models face the highest risk.

Generated by OpenCVE AI on August 25, 2026 at 12:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade NLTK to version 3.10.3 or later, which removes the unsafe pickle loader behavior.
  • Restrict the loading of NLTK artifacts to trusted sources only; avoid consuming models or tokenizers from unverified origins.
  • If an upgrade cannot be performed immediately, replace or patch the deserialization routine to enforce a whitelist of allowed callables, thereby preventing REDUCE from invoking arbitrary functions.

Generated by OpenCVE AI on August 25, 2026 at 12:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 25 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
Description 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 functions like ReppTokenizer._execute and numpy.f2py.crackfortran.myeval through pickle REDUCE to execute arbitrary commands during model or tokenizer artifact loading.
Title NLTK before 3.10.3 Remote Code Execution via Unsafe Pickle Deserialization
First Time appeared Nltk
Nltk nltk
Weaknesses CWE-502
CPEs cpe:2.3:a:nltk:nltk:*:*:*:*:*:*:*:*
Vendors & Products Nltk
Nltk nltk
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-25T11:36:41.768Z

Reserved: 2026-08-25T11:09:11.170Z

Link: CVE-2026-79657

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-25T12:16:28.870

Modified: 2026-08-25T12:16:28.870

Link: CVE-2026-79657

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T12:30:17Z

Weaknesses
  • CWE-502

    Deserialization of Untrusted Data