CVE-2026-79657

9.8

NLTK · NLTK

NLTK versions before 3.10.3 are vulnerable to remote code execution due to unsafe pickle deserialization of untrusted data in allowlisted loaders.

Executive summary

A critical remote code execution vulnerability in NLTK allows unauthenticated attackers to execute arbitrary commands by supplying malicious pickle payloads.

Vulnerability

This vulnerability is a deserialization flaw (CWE-502) where the application trusts entire module namespaces during pickle loading, permitting the invocation of dangerous functions. The attack vector is unauthenticated and requires no user interaction to achieve full system compromise.

Business impact

Successful exploitation allows an attacker to gain full control over the host running the NLTK library. Given the CVSS score of 9.8, this presents a critical risk that could lead to complete data exfiltration, total system compromise, or the installation of persistent malware within the production environment.

Remediation

Immediate Action: Update NLTK to version 3.10.3 or later immediately to incorporate the necessary security restrictions on pickle loading.

Proactive Monitoring: Monitor application logs for unexpected deserialization errors or attempts to load unknown pickle artifacts, particularly in environments processing externally sourced model data.

Compensating Controls: Ensure that any application using NLTK is running with the principle of least privilege, specifically restricting the process from executing shell commands or accessing sensitive files.

Exploitation status

Public Exploit Available: Unknown

Analyst recommendation

This vulnerability represents a severe risk to any system utilizing NLTK for processing model or tokenizer artifacts. Organizations must prioritize upgrading to version 3.10.3 immediately to prevent potential remote code execution, as the existence of a proof of concept indicates that attackers are likely developing functional exploits.

More NLTK CVEs