CVE-2026-34831

MEDIUM CVSS 3.1: 6,5 EPSS 0.04%
Обновлено 16 апреля 2026
Rack
Параметр Значение
CVSS 6,5 (MEDIUM)
Уязвимые версии 3.0.0 — 3.2.6
Устранено в версии 2.2.23
Тип уязвимости CWE-130, CWE-135
Поставщик Rack
Публичный эксплойт Нет

Rack — это модульный интерфейс веб-сервера Ruby. До версий 2.2.23, 3.1.21 и 3.2.6 Rack::Files#fail устанавливает заголовок ответа Content-Length, используя String#size вместо String#bytesize. Если тело ответа содержит многобайтовые символы UTF-8, объявленная длина содержимого меньше количества байтов, фактически отправленных по сети.

Поскольку Rack::Files отражает запрошенный путь в ответах 404, злоумышленник может вызвать это несоответствие, запросив несуществующий путь, содержащий символы UTF-8 в процентной кодировке. Это приводит к неправильному формированию ответа HTTP и может вызвать десинхронизацию ответа в развертываниях, которые полагаются на неправильное значение Content-Length. Эта проблема исправлена ​​в версиях 2.2.23, 3.1.21 и 3.2.6.

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

Rack is a modular Ruby web server interface. Prior to versions 2.2.23, 3.1.21, and 3.2.6, Rack::Files#fail sets the Content-Length response header using String#size instead of String#bytesize. When the response body contains multibyte UTF-8 characters, the declared Content-Length is smaller than the number of bytes actually sent on the wire. Because Rack::Files reflects the requested path in 404 responses, an attacker can trigger this mismatch by requesting a non-existent path containing percent-encoded UTF-8 characters. This results in incorrect HTTP response framing and may cause response desynchronization in deployments that rely on the incorrect Content-Length value. This issue has been patched in versions 2.2.23, 3.1.21, and 3.2.6.

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

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

Последствия

Конфиденциальность
Низкое
Частичная утечка данных
Целостность
Низкое
Частичная модификация данных
Доступность
Нет
Нет нарушения работы

Строка CVSS v3.1

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

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

Конфигурация От (включительно) До (исключительно)
Rack Rack
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*
2.2.23
Rack Rack
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*
3.0.0 3.1.21
Rack Rack
cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*
3.2.0 3.2.6