Skip to content
OpenAdvisories
High · 7.5 CVE-2026-81722 EUVD-2026-67072GHSA-8x48-8g7j-rqxpGHSA-ww6m-cw3f-q94gPYSEC-2026-3738

nltk PorterStemmer before 3.10.3 Quadratic-time DoS

Published Aug 27, 2026 · Updated Aug 27, 2026 · Assigned by VulnCheck

Description

nltk PorterStemmer in versions <= 3.10.2 (fixed in 3.10.3) contains an inefficient-algorithmic-complexity denial of service in PorterStemmer.stem(). The _is_consonant() helper walks backward over the entire run of trailing 'y' characters on every call, and _measure() invokes it for each stem position, causing O(n^2) behavior. A single ~20-50 KB untrusted token consisting of a long run of the letter 'y' followed by a matching suffix (e.g., 'ness') can pin a CPU core for seconds to minutes, causing availability impact.

Affected products

VendorProductAffectedFixed
nltk nltk < 3.10.3 3.10.3

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 nltk 3.10.3-1 —
Debian 13 nltk No fix yet —
Debian 12 nltk No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu Pro 26.04 LTS nltk No fix yet —
Ubuntu Pro 24.04 LTS nltk No fix yet —
Ubuntu Pro 22.04 LTS nltk No fix yet —
Show 4 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 20.04 LTS nltk No fix yet —
Ubuntu Pro 18.04 LTS nltk No fix yet —
Ubuntu Pro 16.04 LTS nltk No fix yet —
Ubuntu Pro 14.04 LTS nltk No fix yet —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling open-webui 0.11.3-r1 —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI nltk < 3.10.3 3.10.3 GHSA-ww6m-cw3f-q94g

References