CVE-2026-81722
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.
How to fix
- nltk nltk3.10.3 or later
- nltk3.10.3 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| nltk nltk | v < 3.10.3 | 3.10.3 |
| nltkPyPI | v < 3.10.3 | 3.10.3 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.