Critical severity · published Jun 27, 2024
CVE-2024-39705
NLTK through 3.8.1 allows remote code execution if untrusted packages have pickled Python code, and the integrated data package download functionality is used
9.8
CVSS
1.3%
EPSS
No
On KEV
Description
NLTK through 3.8.1 allows remote code execution if untrusted packages have pickled Python code, and the integrated data package download functionality is used. This affects, for example, averaged_perceptron_tagger and punkt.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)1.3% · higher than 71% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
NL
Nltk · Nltk
through 3.8.1 · source: CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2024-39705
CVE.org
https://www.cve.org/CVERecord?id=CVE-2024-39705
github.com
https://github.com/nltk/nltk/issues/2522
github.com
https://github.com/nltk/nltk/issues/3266
www.vicarius.io
https://www.vicarius.io/vsociety/posts/rce-in-python-nltk-cve-2024-39705-39706
More from Nltk
10.0
CVE-2026-0848
Arbitrary Code Execution in NLTK StanfordSegmenter via Untrusted JAR Loading
9.8
CVE-2026-79675
NLTK before 3.10.3 JVM Argument Injection via Per-Call Options
9.8
CVE-2026-79657
NLTK before 3.10.3 Remote Code Execution via Unsafe Pickle Deserialization
9.6
CVE-2026-78683
NLTK before 3.10.0 Remote Code Execution via Unsafe Pickle Deserialization
8.8
CVE-2026-71513
NLTK 3.10.0 through 3.10.2 Remote Code Execution via AllowlistUnpickler Dotted-Name Bypass
