CVE-2019-0344

SAP Commerce Cloud

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2024-09-30

Официальное описание

SAP Commerce Cloud (formerly known as Hybris) contains a deserialization of untrusted data vulnerability within the mediaconversion and virtualjdbc extension that allows for code injection.

🛡️
Технический анализ и план устранения

Суть уязвимости

CVE-2019-0344 представляет собой критическую уязвимость типа «десериализация недоверенных данных» в расширениях mediaconversion и virtualjdbc платформы SAP Commerce Cloud (Hybris).

Проблема заключается в использовании библиотеки JGroups и небезопасной конфигурации Java-десериализации. Злоумышленник может отправить специально сформированный запрос к портам, используемым этими расширениями, что приведет к выполнению произвольного кода (RCE) в контексте пользователя, запустившего сервер приложений. Уязвимость позволяет полностью скомпрометировать сервер без аутентификации.

Как исправить

Основным способом устранения является обновление платформы до версий, в которых уязвимость была закрыта производителем.

  1. Определите текущую версию SAP Commerce Cloud.
  2. Обновите систему до одного из следующих патчей (или выше):
  3. SAP Commerce Cloud 1808: Patch 1808.14
  4. SAP Commerce Cloud 1811: Patch 1811.11
  5. SAP Commerce Cloud 1905: Patch 1905.05
  6. После загрузки патча выполните пересборку и перезапуск системы:
ant clean all

./hybrisserver.sh

Временные меры

Если немедленное обновление невозможно, необходимо применить защитные меры для снижения риска эксплуатации.

  1. Отключение уязвимых расширений: Если бизнес-процессы позволяют, удалите или закомментируйте расширения mediaconversion и virtualjdbc в файле конфигурации localextensions.xml.

  2. Сетевое экранирование: Заблокируйте доступ к портам, которые JGroups использует для взаимодействия (обычно это UDP-порты в диапазоне 45588-45900 и TCP-порты 7800-7850), для всех внешних источников. Доступ должен быть разрешен только между узлами кластера.

  3. Настройка JGroups (Blacklist/Whitelist): Добавьте параметры фильтрации десериализации в настройки JVM через local.properties, чтобы запретить десериализацию опасных классов.

tomcat.generaloptions=-Djdk.serialFilter=!org.jgroups.**;!com.sun.rowset.**

  1. Обновление библиотеки JGroups: В некоторых случаях помогает ручная замена библиотеки jgroups-*.jar на версию 4.1.5 или выше в директориях bin/platform/ext/core/lib и соответствующих папках расширений, однако это может нарушить стабильность работы кластера и требует тщательного тестирования.