Добро пожаловать на BlackSAMP - ФОРУМ

  • Приватные и секретные разделы доступны только зарегистрированным пользователям.

    Вся важная информация в нашем ТГ: t.me/gtablack

    На данном форуме запрещено публиковать контент нарушающий Российское законодательство, за это последует блокировка ФА.

Уязвимости десериализации JSON (актуальные CVE)

Количество просмотров: 24

IlyaMarkinV

Редактор
Редактор
Регистрация
13 Июн 2025
Сообщения
25
Реакции
1
Баллы
3
Сегодня разберём реальные уязвимости десериализации JSON, которые могут привести к RCE.

[warning]Материал только для образовательных целей![/warning]




Актуальные уязвимости (2024):
  • Jackson-databind: CVE-2023-35116 (CVSS 8.1)
  • Newtonsoft.Json: CVE-2021-26701 (CVSS 7.3)
  • Python jsonpickle: Уязвимость при allow_unsafe=True




Технические детали:
Уязвимости возникают при:
  • Использовании @type/$type в JSON
  • Наличии gadget-классов в classpath
  • Небезопасной конфигурации парсера




Пример защиты (Java):
Java:
ObjectMapper mapper = new ObjectMapper();
// Безопасные настройки:
mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
mapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance,
                           ObjectMapper.DefaultTyping.NON_FINAL);




Рекомендации:
  1. Обновляйте библиотеки до актуальных версий
  2. Отключайте полиморфную десериализацию
  3. Используйте DTO вместо прямого маппинга
  4. Включите STRICT_DUPLICATE_DETECTION




Как проверить систему?
Bash:
# Для Java:
mvn dependency:tree | grep jackson

# Для Python:
pip show jsonpickle | grep Version




Статус:
  • Уязвимости исправлены в последних версиях
  • Атаки возможны только при небезопасной конфигурации
  • Активно мониторятся в корпоративных средах

P.S. Все CVE подтверждены и есть в базе MITRE.
 
Сверху Снизу