CVE-2025-71408 NLTK < 3.9.3 Eval Injection via collocations.py Command-Line Arguments

High 8.5 Published Updated

Attackers can execute arbitrary Python code by controlling command-line arguments passed to the NLTK collocations module.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2025-71408?

CVE-2025-71408 is a high-severity code injection vulnerability in ntlk, published on 24 Jul 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

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, the __main__ block passes command-line arguments directly to eval() as suffixes of BigramAssocMeasures without allowlist validation or sanitization, enabling an attacker to supply a Python expression that escapes the intended attribute lookup and executes arbitrary code including OS commands via the os module.

Weakness: CWE-95

Which versions are affected by CVE-2025-71408?

3 open source packages ship an affected version, including nltk. It affects 1 product.

PackageAffectedFixed in
nltk PyPIAll versions3.9.3
nltk PyPIAll versions3.9.3
nltk PyPIAll versions3.9.3

Products include Nltk Nltk.

How do I fix CVE-2025-71408?

Upgrade nltk to 3.9.3 or later.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2025-71408 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-71408 exists.

Sources

Also known as DEBIAN-CVE-2025-71408, ECHO-42f0-e2fb-b0d3, GHSA-848c-c2cx-j7qx, PYSEC-2026-3657, UBUNTU-CVE-2025-71408.

Is CVE-2025-71408 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free