Skip to content
CriticalVulnerability

CVE-2026-78683: NLTK unsafe pickle deserialization in TransitionParser.parse() method

Identifier
CVE-2026-78683
Published
Record updated
View JSON
Affected
  • nltk <= 3.9.4
Fixed in
3.10.0
  • released July 7, 2026, 48 days before disclosure
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.5%

Summary

NLTK before 3.10.0 (affected versions <=3.9.4) has an unsafe pickle deserialization flaw in TransitionParser.parse() (nltk/parse/transitionparser.py). The method calls pickle_load() with restricted=False, routing loads through WarningUnpickler, which does not override find_class(), so arbitrary class resolution is allowed. 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.

Mitigation

Fixed in 3.10.0.