jackson-databind содержит универсальные функции привязки данных и древовидную модель для процессора данных Jackson Data Processor. С версий 2.8.0 до 2.18.9, 2.21.5 и 3.1.4 в BeanDeserializerBase.createContextual() исключения @JsonIgnoreProperties для каждого свойства применяются с помощью _handleByNameInclusion(), создавая контекстный десериализатор, у которого в BeanPropertyMap удалены игнорируемые свойства. Последующий блок нечувствительности к регистру для каждого свойства (запускаемый @JsonFormat(ACCEPT_CASE_INSENSITIVE_PROPERTIES)) перестраивает из this._beanProperties (исходную, нефильтрованную карту) вместо contextual._beanProperties, затем перезаписывает отфильтрованную карту — восстанавливая каждое только что удаленное свойство _handleByNameInclusion.
Игнорируемое свойство снова становится доступным для записи. Эта уязвимость исправлена в версиях 2.18.9, 2.21.5 и 3.1.4.
Показать оригинальное описание (EN)
jackson-databind contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. From 2.8.0 until 2.18.9, 2.21.5, and 3.1.4, in BeanDeserializerBase.createContextual(), per-property @JsonIgnoreProperties exclusions are applied by _handleByNameInclusion(), producing a contextual deserializer whose BeanPropertyMap has the ignored properties removed. The subsequent per-property case-insensitivity block (triggered by @JsonFormat(ACCEPT_CASE_INSENSITIVE_PROPERTIES)) rebuilds from this._beanProperties (the original, unfiltered map) instead of contextual._beanProperties, then overwrites the filtered map — restoring every property _handleByNameInclusion had just removed. The ignored property becomes writable again. This vulnerability is fixed in 2.18.9, 2.21.5, and 3.1.4.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 4
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Fasterxml Jackson-Databind
cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:*
|
2.8.0
|
2.18.9
|
|
Fasterxml Jackson-Databind
cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:*
|
2.19.0
|
2.21.5
|
|
Fasterxml Jackson-Databind
cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:*
|
3.0.0
|
3.1.4
|
|
Fasterxml Jackson-Databind
cpe:2.3:a:fasterxml:jackson-databind:2.22.0:*:*:*:*:*:*:*
|
— | — |