Ad

CVE-2026-81722

HIGH CVSS 4.0: 8,7 EPSS 0.36%
Обновлено 31 августа 2026
Nltk
Параметр Значение
CVSS 8,7 (HIGH)
Уязвимые версии до 3.10.3
Устранено в версии 3.10.3
Тип уязвимости CWE-407
Поставщик Nltk
Публичный эксплойт Нет

nltk PorterStemmer в версиях <= 3.10.2 (исправлено в 3.10.3) содержит отказ в обслуживании из-за неэффективной алгоритмической сложности в PorterStemmer.stem(). Помощник _is_consonant() проходит назад по всей серии конечных символов 'y' при каждом вызове, а _measure() вызывает его для каждой позиции основы, вызывая поведение O(n^2). Один ненадежный токен размером ~20–50 КБ, состоящий из длинной буквы «y», за которой следует соответствующий суффикс (например, «ness»), может закрепить ядро ​​ЦП на время от нескольких секунд до минут, что повлияет на доступность.

Показать оригинальное описание (EN)

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.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Условия для атаки
Не требуются
Нет дополнительных условий
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Нет
Нет утечки данных
Целостность
Нет
Нет модификации данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v4.0

Тип уязвимости (CWE)

Уязвимые продукты 1

Конфигурация От (включительно) До (исключительно)
Nltk Nltk
cpe:2.3:a:nltk:nltk:*:*:*:*:*:*:*:*
3.10.3