CVE-2026-78683
Critical · 9.6CVSS
9.6
EPSS
0.5%
Published
Aug 25, 2026
CISA due date
—
The record
NLTK before 3.10.0 (affected versions <=3.9.4) contains an unsafe pickle deserialization vulnerability in the TransitionParser.parse() method (nltk/parse/transitionparser.py). The method calls pickle_load() with the default restricted=False, routing deserialization through WarningUnpickler, which does not override find_class() and therefore permits arbitrary class resolution. When an application loads an attacker-crafted model file, embedded pickle gadget chains execute arbitrary Python code with the privileges of the user running the application. NLTK provides a RestrictedUnpickler for safe deserialization, but it is not used by production code paths. Fixed in 3.10.0.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-79657 NLTK versions before 3.10.3 contain a remote code execution vulnerability in allowlisted… CWE-502
- CVE-2026-47058 Vulnerability in Oracle Java SE (component: Scripting). CWE-502
- CVE-2026-12484 A vulnerability in keras-team/keras version 3.15.0 allows unsafe deserialization of… CWE-502
- CVE-2026-50509 Deserialization of untrusted data in Windows Wireless Wide Area Network Service allows an… CWE-502
- CVE-2026-12481 A vulnerability in keras-team/keras version 3.14.0 allows for arbitrary code execution… CWE-502
- CVE-2026-55153 mchange-commons-java is a Java library of shared utility classes used by mchange projects… CWE-502
- CVE-2026-46386 OpenProject is open-source, web-based project management software. CWE-502
- CVE-2026-57527 Zed Attack Proxy (ZAP) ViewState add-on before version 4 contains an insecure… CWE-502