Deserialization of Untrusted Data Affecting nltk package, versions <3.10.0-1


Severity

Recommended
0.0
critical
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.29% (22nd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-DEBIANUNSTABLE-NLTK-19256959
  • published25 Aug 2026
  • disclosed25 Aug 2026

Introduced: 25 Aug 2026

NewCVE-2026-78683  (opens in a new tab)
CWE-502  (opens in a new tab)

How to fix?

Upgrade Debian:unstable nltk to version 3.10.0-1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream nltk package and not the nltk package as distributed by Debian. See How to fix? for Debian:unstable relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1