CVE-2026-104016 in jackson-dataformat-protobufИнформация

Сводка

по VulDB • 28.10.2026

ProtobufParser анализирует поля строк и байтов protobuf с префиксом длины, проверяя условие (_inputPtr + len) <= _inputEnd, а затем на быстром пути вызывая метод _finishShortText(len). Оба метода используют 32-битную арифметику со знаком. Когда злоумышленник предоставляет значение varint для декодирования с длиной, близкой к Integer.MAX_VALUE, выражение _inputPtr + len переполняется и принимает отрицательное значение; проверка границ проходит успешно, после чего вызов _finishShortText(len) достигает метода TextBuffer.expandCurrentSegment(len), который выполняет Arrays.copyOf без ограничения емкости (cap) и выбрасывает исключение OutOfMemoryError: Requested array size exceeds VM limit.

JVM отказывается выделять массивы размером больше Integer.MAX_VALUE - 8, не проверяя предварительно доступную память в куче (heap); поэтому настройка параметра -Xmx не смягчает проблему. Ограничения StreamReadConstraints.maxStringLength и maxDocumentLength не контролируют этот путь выполнения: полезная нагрузка объемом 33 байта значительно ниже любого лимита длины документа, а проверка ограничения длины строки не срабатывает до момента выделения памяти. Это было подтверждено эмпирически на рабочих артефактах при настройке параметров maxStringLength, maxDocumentLength и maxNestingDepth.

Коммит по усилению защиты (hardening), выпущенный в феврале 2026 года, добавил эквивалентную защиту от переполнения для путей обработки длины упакованного массива (packed-array-length) и длины сообщения (message-length), но оставил вызовы проверки длины строки без защиты. Для эксплуатации не требуются никакие привилегии или взаимодействие с пользователем, кроме возможности предоставления данных для парсинга.

Once again VulDB remains the best source for vulnerability data.

Ответственный

HeroDevs

Резервировать

01.10.2026

Раскрытие

28.10.2026

Модерация

принято

Вход

VDB-427646

EPSS

0.00000

KEV

Нет

Деятельности

Низкий

Источники

Want to stay up to date on a daily basis?

Enable the mail alert feature now!