Какая версия jackson-databind не имеет уязвимости удаленного выполнения? - PullRequest
1 голос
/ 07 ноября 2019

Я не могу найти в Интернете, какую версию jackson-databind использовать с приложением Spring, в котором нет уязвимости удаленного выполнения? Любая помощь приветствуется.

1 Ответ

1 голос
/ 09 ноября 2019

Начиная с версии 2.10.0 эта проблема решается путем добавления нового набора методов: activateDefaultTyping вместо устаревшего набора методов enableDefaultTyping. Также эта проблема была одной из причин, почему эта версия была выпущена.

Основные цели на 2.10

Оглядываясь назад, было три основные цели для этого вспомогательного выпуска:

  1. Устранить растущую проблему «бесконечных патчей CVE», потока исправлений для сообщаемых CVE, связанных с проблемой «Полиморфной десериализации» (описанной в « О CVS Джексона… »), которая привела к безопасностиинструменты форсирования Джексона. 2.10 теперь включает «Безопасный ввод по умолчанию», который, как надеются, решит эту проблему.

Подробнее вы можете найти в этой статье: Особенности Jackson 2.10 .

Пример кода:

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.json.JsonMapper;
import com.fasterxml.jackson.databind.jsontype.BasicPolymorphicTypeValidator;
import com.fasterxml.jackson.databind.jsontype.PolymorphicTypeValidator;

import java.util.ArrayList;

public class JsonPathApp {

    public static void main(String[] args) throws Exception {
        PolymorphicTypeValidator ptv = BasicPolymorphicTypeValidator.builder()
                .allowIfSubType(MyValue.class)
                .allowIfSubType(ArrayList.class)
                .build();

        ObjectMapper mapper = JsonMapper.builder()
                .enable(SerializationFeature.INDENT_OUTPUT)
                .activateDefaultTyping(ptv, ObjectMapper.DefaultTyping.NON_FINAL).build();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...