REXML contains a denial of service vulnerability
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 22/100)
- Есть публичный код proof-of-concept (GitHub); записей об эксплуатации в реальных атаках нет.
- Вероятность эксплуатации в ближайшие 30 дней: 2% (FIRST EPSS); выше, чем у 81% записей.
- Может быть вызвана любым, у кого есть доступ через интернет. Учётная запись или пароль не требуются. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- По данным CISA атаку можно автоматизировать: цели находятся массовым сканированием.
- Исправленная версия: azl3 ruby 3.3.0-4 on Azure Linux 3.0 3.3.3-1; azl3 ruby 3.3.3-1 on Azure Linux 3.0 3.3.3-1; azl3 rubygem-rexml 3.2.6-1 on Azure Linux 3.0 3.2.8-1.
Пока низкий приоритет. Обновитесь до azl3 ruby 3.3.0-4 on Azure Linux 3.0 3.3.3-1; azl3 ruby 3.3.3-1 on Azure Linux 3.0 3.3.3-1; azl3 rubygem-rexml 3.2.6-1 on Azure Linux 3.0 3.2.8-1 или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
REXML is an XML toolkit for Ruby. The REXML gem before 3.2.6 has a denial of service vulnerability when it parses an XML that has many `<`s in an attribute value. Those who need to parse untrusted XMLs may be impacted to this vulnerability. The REXML gem 3.2.7 or later include the patch to fix this vulnerability. As a workaround, don't parse untrusted XMLs.
- Опубликовано
- 16 мая 2024 г.
- Обновлено
- 17 июн. 2026 г.
- EPSS
- 2,0 % · 81-й процентиль
- CWE
- CWE-400
Инструменты для отчёта
Оценка срочности
22
Наблюдать
Пока низкий приоритет.
- CVSS
- 21 / 40 · 5.3 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 1 / 30 · 2,0 %
Решение CISA SSVC
- Эксплуатация
- нет
- Автоматизируемо
- да
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Оценка CNA и NVD
- NVD
- —
- CNA · GitHub_M
- 5,3
- NVD ещё не выставил свою оценку; показана оценка CNA.
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Есть PoC, боевого модуля нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| ruby-lang | rexml | cpe:2.3:a:ruby-lang:rexml |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- ruby-lang rexmlдо 3.2.7
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (GitHub_M). Не зависят от анализа CPE в NVD и обычно опережают его.
ruby rexml
- < 3.2.7затронута
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| AlmaLinux:8 | pcs | до 0.10.18-2.el8_10.1 | 0.10.18-2.el8_10.1 |
| AlmaLinux:8 | pcs-snmp | до 0.10.18-2.el8_10.1 | 0.10.18-2.el8_10.1 |
| AlmaLinux:8 | ruby | до 2.5.9-112.module_el8.10.0+3871+342e2c2f | 2.5.9-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | ruby-devel | до 2.5.9-112.module_el8.10.0+3871+342e2c2f | 2.5.9-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | ruby-doc | до 2.5.9-112.module_el8.10.0+3871+342e2c2f | 2.5.9-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | ruby-irb | до 2.5.9-112.module_el8.10.0+3871+342e2c2f | 2.5.9-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | ruby-libs | до 2.5.9-112.module_el8.10.0+3871+342e2c2f | 2.5.9-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-abrt | до 0.3.0-4.module_el8.10.0+3871+342e2c2f | 0.3.0-4.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-abrt-doc | до 0.3.0-4.module_el8.10.0+3871+342e2c2f | 0.3.0-4.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-bigdecimal | до 1.3.4-112.module_el8.10.0+3871+342e2c2f | 1.3.4-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-bson | до 4.3.0-2.module_el8.6.0+3170+4b08f9d4 | 4.3.0-2.module_el8.6.0+3170+4b08f9d4 |
| AlmaLinux:8 | rubygem-bson | до 4.3.0-2.module_el8.5.0+259+8cec6917 | 4.3.0-2.module_el8.5.0+259+8cec6917 |
| AlmaLinux:8 | rubygem-bson | до 4.3.0-2.module_el8.5.0+2625+ec418553 | 4.3.0-2.module_el8.5.0+2625+ec418553 |
| AlmaLinux:8 | rubygem-bson-doc | до 4.3.0-2.module_el8.5.0+2625+ec418553 | 4.3.0-2.module_el8.5.0+2625+ec418553 |
| AlmaLinux:8 | rubygem-bundler | до 1.16.1-4.module_el8.10.0+3871+342e2c2f | 1.16.1-4.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-bundler-doc | до 1.16.1-4.module_el8.10.0+3871+342e2c2f | 1.16.1-4.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-did_you_mean | до 1.2.0-112.module_el8.10.0+3871+342e2c2f | 1.2.0-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-io-console | до 0.4.6-112.module_el8.10.0+3871+342e2c2f | 0.4.6-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-json | до 2.1.0-112.module_el8.10.0+3871+342e2c2f | 2.1.0-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-minitest | до 5.10.3-112.module_el8.10.0+3871+342e2c2f | 5.10.3-112.module_el8.10.0+3871+342e2c2f |
| AlmaLinux:8 | rubygem-mongo | до 2.5.1-2.module_el8.5.0+2625+ec418553 | 2.5.1-2.module_el8.5.0+2625+ec418553 |
| AlmaLinux:8 | rubygem-mongo-doc | до 2.5.1-2.module_el8.5.0+2625+ec418553 | 2.5.1-2.module_el8.5.0+2625+ec418553 |
| AlmaLinux:8 | rubygem-mysql2 | до 0.4.10-4.module_el8.6.0+3170+4b08f9d4 | 0.4.10-4.module_el8.6.0+3170+4b08f9d4 |
| AlmaLinux:8 | rubygem-mysql2 | до 0.4.10-4.module_el8.5.0+259+8cec6917 | 0.4.10-4.module_el8.5.0+259+8cec6917 |
+76
Тот же продукт
ruby-lang: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2021-28965The REXML gem before 3.2.5 in Ruby before 2.6.7, 2.7.x before 2.7.3, and 3.x before 3.0.1 does not properly address XML round-trip issues.32Наблюдать
- CVE-2024-41946REXML DoS vulnerability30Наблюдать
- CVE-2024-41123REXML DoS vulnerability30Наблюдать
Опубликованы до и после этой записи в том же продукте
- Позже →CVE-2024-3990816 июл. 2024 г. · Denial of service in REXML17Наблюдать
- Позже →CVE-2024-4339822 авг. 2024 г. · REXML denial of service vulnerability23Наблюдать
- Позже →CVE-2024-4976128 окт. 2024 г. · REXML ReDoS vulnerability26Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| azl3 ruby 3.3.0-4 on Azure Linux 3.0 | 3.3.3-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| azl3 ruby 3.3.3-1 on Azure Linux 3.0 | 3.3.3-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| azl3 rubygem-rexml 3.2.6-1 on Azure Linux 3.0 | 3.2.8-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| azl3 rubygem-rexml 3.2.8-1 on Azure Linux 3.0 | 3.2.8-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 ruby 3.1.4-6 on CBL Mariner 2.0 | 3.1.4-6 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 ruby 3.1.4-9 on CBL Mariner 2.0 | 3.1.4-6 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 rubygem-rexml 3.2.5-1 on CBL Mariner 2.0 | 3.2.7-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 rubygem-rexml 3.2.7-1 on CBL Mariner 2.0 | 3.2.7-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| almalinux:ruby | 2.5.9-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:ruby-devel | 2.5.9-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:ruby-doc | 2.5.9-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:ruby-irb | 2.5.9-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:ruby-libs | 2.5.9-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-abrt | 0.3.0-4.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-abrt-doc | 0.3.0-4.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-bigdecimal | 1.3.4-112.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-bson | 4.3.0-2.module_el8.5.0+2625+ec418553 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-bson-doc | 4.3.0-2.module_el8.5.0+2625+ec418553 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-bundler | 1.16.1-4.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:rubygem-bundler-doc | 1.16.1-4.module_el8.10.0+3871+342e2c2f · AlmaLinux:8 | Реестр пакетов (OSV) |
| debian:ruby2.7 | 2.7.4-1+deb11u3 · Debian:11 | Реестр пакетов (OSV) |
| opensuse:rubygem-rexml | 3.3.9-bp156.4.3.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| red hat:ruby | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-debuginfo | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-debugsource | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-devel | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-doc | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-irb | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-libs | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:ruby-libs-debuginfo | 0:2.5.9-112.module+el8.10.0+22021+135c76a8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
+15
Статус эксплойта
Есть proof of concept
Существует публичный PoC или сигнатура обнаружения. Знание об эксплойте доступно; не откладывайте установку исправлений.
Доказательство
- Репозиторий PoC на GitHub ×1
Noroxi не размещает код эксплойтов и не даёт на них ссылок. Показываются имена модулей Metasploit и идентификаторы шаблонов Nuclei (имена, не код); записи Exploit-DB и репозитории PoC даются только числом.
| Источник | Тип | Дата |
|---|---|---|
| Репозиторий PoC на GitHub | stars:5 | 2024-12-19 |
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
- Публикация
- Первый PoC+216 дн.
- Сегодня20 окт. 2026 г.+887 дн.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
- CVE-2024-41123с разницей 77 дн.REXML DoS vulnerability30Наблюдать
- CVE-2024-41946с разницей 77 дн.REXML DoS vulnerability30Наблюдать
- CVE-2024-39908с разницей 61 дн.Denial of service in REXML17Наблюдать
- CVE-2025-58767с разницей 489 дн.REXML has a DoS condition when parsing malformed XML file4Наблюдать
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Вендор продукта присутствует в публичной программе. Сопоставление по имени; проверьте текст scope в программе.
Технические детали
Условия атаки
- Может быть вызвана любым, у кого есть доступ через интернет.
- Учётная запись или пароль не требуются.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- низкое · работа сервиса может быть нарушена
- Вектор атаки
- Сеть
- Сложность атаки
- Низкая
- Требуемые привилегии
- Не требуются
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Низкое
Класс уязвимости (CWE)
CWE-400 · Uncontrolled Resource ConsumptionВектор CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
nvd-secondary
Первопричина
Код, разбирающий вложенные структуры, не ограничивает глубину или размер. Небольшие входные данные могут привести к несоразмерной вычислительной нагрузке.
Ошибка в коде
Весь класс CWE-400Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.
Уязвимый код
function expand(node) { return node.children.map(expand);}Исправленный код
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.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 4)Свернуть
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.