Перейти к содержимому
Noroxi
NVD / CVE Program· CNA GitHub_M

CVE-2026-31958: Tornado has a DoS due to too many multipart parts

Оценка Noroxi

Приоритет: Наблюдать (оценка срочности 34/100)

  • В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
  • Вероятность эксплуатации в ближайшие 30 дней: 0,38% (FIRST EPSS).
  • Может быть вызвана любым, у кого есть доступ через интернет. Учётная запись или пароль не требуются. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
  • По данным CISA атаку можно автоматизировать: цели находятся массовым сканированием.
  • Исправленная версия: tornadoweb tornado 6.5.5.

Пока низкий приоритет. Обновитесь до tornadoweb tornado 6.5.5 или новее.

Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем

Первоисточники: NVD · CVE.org · FIRST EPSS

Tornado is a Python web framework and asynchronous networking library. In versions of Tornado prior to 6.5.5, the only limit on the number of parts in multipart/form-data is the max_body_size setting (default 100MB). Since parsing occurs synchronously on the main thread, this creates the possibility of denial-of-service due to the cost of parsing very large multipart bodies with many parts. This vulnerability is fixed in 6.5.5.

ВысокаяCVSS 8.7 · v4.0—Эксплойта нет Есть исправление
Опубликовано
11 мар. 2026 г.
Обновлено
17 июн. 2026 г.
EPSS
0,3 % · 31-й процентиль

Инструменты для отчёта

JSON

Оценка срочности

34

Наблюдать

Пока низкий приоритет.

CVSS
34 / 40 · 8.7 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,3 %

Решение CISA SSVC

Эксплуатация
нет
Автоматизируемо
да
Техническое влияние
частичное

Vulnrichment: входные данные дерева решений CISA.

Оценка CNA и NVD

NVD
—
CNA · GitHub_M
8,7
NVD ещё не выставил свою оценку; показана оценка CNA.

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.

Узнайте, когда запись изменится

  • Нет в KEV: эксплуатация в реальных атаках не зафиксирована
  • Публичного эксплойта нет
  • Исправление выпущено

Если что-то из этого изменится, сообщим в ежедневной сводке.

Следить за CVE-2026-31958

Когда мы напишем

  • когда запись попадёт в CISA KEV
  • когда появится или станет боевым эксплойт
  • когда запись обновится (в том числе исправленная версия)
  • когда EPSS вырастет на 20 пунктов за неделю

Одна сводка в день по почте (06:00 UTC); с вебхуком попадание в KEV и боевые эксплойты — сразу.

С бесплатным аккаунтом также

У вас WordPress? Проверьте сайт бесплатно в WP Lens

  • Оповещения по стеку: добавьте свои продукты и версии — новые CVE для них придут вам
  • Мониторинг сайта: 1 сайт, письмо сразу при недоступности
  • Добавьте домен: поддомены и риск захвата проверяются каждую неделю (1 домен)
  • 10 проверок в час в инструментах безопасности (без аккаунта — 3 в день), API-ключ и MCP
  • Все сканирования в одной панели: находки, изменения с прошлого сканирования, отчёт по домену или клиенту (PDF, ссылка для просмотра)
Все бесплатные инструменты

Регистрация по почте · Уже есть аккаунт? Войти

Бесплатный аккаунт, без карты. Отписаться можно в любой момент.

У вас WordPress? Проверьте сайт бесплатно в WP Lens

Затронута ли ваша версия? Проверьте

Анализ Noroxi

Что это значит для вашей инфраструктуры?

Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.

Мы используем этот продукт, нужна помощь

Затронутые системы

Затронута ли ваша версия?

Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.

ВендорПродукт
tornadowebtornado

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • tornadoweb tornadoдо 6.5.5

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (GitHub_M). Не зависят от анализа CPE в NVD и обычно опережают его.

  • tornadoweb tornado

    • < 6.5.5затронута

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
AlmaLinux:10python3-tornadoдо 6.5.5-1.el10_1.16.5.5-1.el10_1.1
AlmaLinux:10python3-tornadoдо 6.5.5-1.el10_26.5.5-1.el10_2
AlmaLinux:8pcsдо 0.10.18-2.el8_10.9.alma.10.10.18-2.el8_10.9.alma.1
AlmaLinux:8pcs-snmpдо 0.10.18-2.el8_10.9.alma.10.10.18-2.el8_10.9.alma.1
AlmaLinux:9python3-tornadoдо 6.5.5-1.el9_7.16.5.5-1.el9_7.1
AlmaLinux:9python3-tornadoдо 6.5.5-1.el9_86.5.5-1.el9_8
Debian:12python-tornadoс 0—
Debian:14python-tornadoдо 6.5.5-16.5.5-1
openSUSE:Leap 15.6python-tornado6до 6.3.2-150400.9.15.16.3.2-150400.9.15.1
openSUSE:Leap 16.0python-tornado6до 6.5-160000.4.16.5-160000.4.1
openSUSE:Leap 16.0saltдо 3006.0-160000.5.13006.0-160000.5.1
openSUSE:Leap 16.0salt-testдо 3006.0-160000.5.13006.0-160000.5.1
openSUSE:Tumbleweedpython-tornado6до 6.5.5-1.16.5.5-1.1
openSUSE:Tumbleweedsaltдо 3006.0-56.13006.0-56.1
PyPItornadoдо 6.5.56.5.5
Red Hat:enterprise_linux_eus:10.0python-tornadoдо 0:6.4.2-1.el10_0.20:6.4.2-1.el10_0.2
Red Hat:enterprise_linux_eus:10.0python-tornado-debugsourceдо 0:6.4.2-1.el10_0.20:6.4.2-1.el10_0.2
Red Hat:enterprise_linux_eus:10.0python3-tornadoдо 0:6.4.2-1.el10_0.20:6.4.2-1.el10_0.2
Red Hat:enterprise_linux_eus:10.0python3-tornado-debuginfoдо 0:6.4.2-1.el10_0.20:6.4.2-1.el10_0.2
Red Hat:enterprise_linux:10.1python-tornadoдо 0:6.5.5-1.el10_1.10:6.5.5-1.el10_1.1
Red Hat:enterprise_linux:10.1python-tornado-debugsourceдо 0:6.5.5-1.el10_1.10:6.5.5-1.el10_1.1
Red Hat:enterprise_linux:10.1python3-tornadoдо 0:6.5.5-1.el10_1.10:6.5.5-1.el10_1.1
Red Hat:enterprise_linux:10.1python3-tornado-debuginfoдо 0:6.5.5-1.el10_1.10:6.5.5-1.el10_1.1
Red Hat:enterprise_linux:10.2python-tornadoдо 0:6.5.5-1.el10_20:6.5.5-1.el10_2

+76

Тот же продукт

tornadoweb: все записи

Другие записи с наивысшей оценкой для того же основного продукта.

  • CVE-2024-14029Tornado before 6.4.1 HTTP Request Smuggling via Transfer-Encoding
    36Наблюдать
  • CVE-2023-54397Tornado before 6.3.3 HTTP Request Smuggling via Content-Length
    36Наблюдать
  • CVE-2026-103262Tornado before 6.5.9 Denial of Service via CurlAsyncHTTPClient
    34Наблюдать

Опубликованы до и после этой записи в том же продукте

  • ← РаньшеCVE-2025-6772512 дек. 2025 г. · Tornado is Vulnerable to Quadratic DoS via Repeated Header Coalescing
    30Наблюдать
  • ← РаньшеCVE-2025-6772612 дек. 2025 г. · Tornado is Vulnerable to Quadratic DoS via Crafted Multipart Parameters
    30Наблюдать
  • Позже →CVE-2026-355363 апр. 2026 г. · In Tornado before 6.5.5, cookie attribute injection could occur because the domain, path, and samesite arguments to .RequestHandler.set_cook
    21Наблюдать

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
tornadoweb tornado6.5.5 · descriptionВендор (CNA)
almalinux:pcs0.10.18-2.el8_10.9.alma.1 · AlmaLinux:8Реестр пакетов (OSV)
almalinux:pcs-snmp0.10.18-2.el8_10.9.alma.1 · AlmaLinux:8Реестр пакетов (OSV)
almalinux:python3-tornado6.5.5-1.el10_1.1 · AlmaLinux:10Реестр пакетов (OSV)
debian:python-tornado6.5.5-1 · Debian:14Реестр пакетов (OSV)
opensuse:python-tornado66.3.2-150400.9.15.1 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:salt3006.0-56.1 · openSUSE:TumbleweedРеестр пакетов (OSV)
opensuse:salt-test3006.0-160000.5.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
PyPI:tornado6.5.5Реестр пакетов (OSV)
red hat:pcs0:0.11.1-10.el9_0.11 · Red Hat:rhel_e4s:9.0::highavailabilityРеестр пакетов (OSV)
red hat:pcs-snmp0:0.11.1-10.el9_0.11 · Red Hat:rhel_e4s:9.0::highavailabilityРеестр пакетов (OSV)
red hat:python-tornado0:6.5.5-1.el10_1.1 · Red Hat:enterprise_linux:10.1Реестр пакетов (OSV)
red hat:python-tornado-debuginfo0:4.2.1-5.el7_9.3 · Red Hat:rhel_els:7Реестр пакетов (OSV)
red hat:python-tornado-debugsource0:6.5.5-1.el10_1.1 · Red Hat:enterprise_linux:10.1Реестр пакетов (OSV)
red hat:python-tornado-doc0:4.2.1-5.el7_9.3 · Red Hat:rhel_els:7Реестр пакетов (OSV)
red hat:python3-tornado0:6.5.5-1.el10_1.1 · Red Hat:enterprise_linux:10.1Реестр пакетов (OSV)
red hat:python3-tornado-debuginfo0:6.5.5-1.el10_1.1 · Red Hat:enterprise_linux:10.1Реестр пакетов (OSV)
rocky linux:pcs0:0.10.18-2.el8_10.9 · Rocky Linux:8Реестр пакетов (OSV)
rocky linux:python-tornado0:6.5.5-1.el10_1.1 · Rocky Linux:10Реестр пакетов (OSV)
suse:golang-github-lusitaniae-apache_exporter1.0.10-90002.3.6.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:python-tornado4.5.3-150000.3.19.1 · SUSE:Linux Enterprise Micro 5.3Реестр пакетов (OSV)
suse:python-tornado66.3.2-150400.9.15.1 · SUSE:Linux Enterprise Module for Python 3 15 SP7Реестр пакетов (OSV)
suse:saltbundlepy3.11.13-90002.4.9.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:saltbundlepy-core3.11.13-90002.4.9.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:saltbundlepy-m2crypto0.45.1-90002.3.9.2 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:saltbundlepy-pyzmq25.1.2-90002.3.9.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:saltbundlepy-simplejson3.19.1-90002.3.6.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:saltbundlepy-tornado6.3.2-90002.4.6.2 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:spacecmd5.1.13-90002.3.9.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)
suse:uyuni-tools5.1.26-90002.3.9.1 · SUSE:EL-9:Update:Products:MultiLinuxManagerTools:UpdateРеестр пакетов (OSV)

+1

Статус эксплойта

Публичный эксплойт неизвестен

Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

Кроме публикации датированных событий нет.

EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

  • CVE-2025-67725с разницей 89 дн.Tornado is Vulnerable to Quadratic DoS via Repeated Header Coalescing
    30Наблюдать
  • CVE-2025-67726с разницей 89 дн.Tornado is Vulnerable to Quadratic DoS via Crafted Multipart Parameters
    30Наблюдать
  • CVE-2026-82397с разницей 173 дн.Tornado: Urlencoded body parsing omits max_num_fields, so one request can stall the event loop
    30Наблюдать
  • CVE-2024-52804с разницей 474 дн.Tornado has HTTP cookie parsing DoS vulnerability
    30Наблюдать

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Технические детали

Условия атаки

  • Может быть вызвана любым, у кого есть доступ через интернет.
  • Учётная запись или пароль не требуются.
  • Действия пользователя не требуются.
  • Особые условия не требуются; воспроизводится стабильно.

В случае успеха

Конфиденциальность
Целостность
Доступность
Вектор атаки
Сеть
Сложность атаки
Низкая
Требуемые привилегии
Не требуются
Взаимодействие с пользователем
Не требуется
Область действия
X

Класс уязвимости (CWE)

CWE-400 · Uncontrolled Resource Consumption

Вектор CVSS

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

nvd-secondary

Первопричина

Код, разбирающий вложенные структуры, не ограничивает глубину или размер. Небольшие входные данные могут привести к несоразмерной вычислительной нагрузке.

Ошибка в коде

Весь класс CWE-400

Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.

Уязвимый код

ts
function expand(node) {  return node.children.map(expand);}

Исправленный код

ts
const MAX_DEPTH = 32;function expand(node, depth = 0) {  if (depth > MAX_DEPTH) throw new Error("слишком глубоко");  return node.children.map((c) => expand(c, depth + 1));}

Контекст атаки

Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Показать все источники (ещё 1)

Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.

Все записи