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) в контексте пользователя, запустившего сервер приложений. Уязвимость позволяет полностью скомпрометировать сервер без аутентификации.
Как исправить
Основным способом устранения является обновление платформы до версий, в которых уязвимость была закрыта производителем.
- Определите текущую версию SAP Commerce Cloud.
- Обновите систему до одного из следующих патчей (или выше):
- SAP Commerce Cloud 1808: Patch 1808.14
- SAP Commerce Cloud 1811: Patch 1811.11
- SAP Commerce Cloud 1905: Patch 1905.05
- После загрузки патча выполните пересборку и перезапуск системы:
ant clean all
./hybrisserver.sh
Временные меры
Если немедленное обновление невозможно, необходимо применить защитные меры для снижения риска эксплуатации.
-
Отключение уязвимых расширений: Если бизнес-процессы позволяют, удалите или закомментируйте расширения
mediaconversionиvirtualjdbcв файле конфигурацииlocalextensions.xml. -
Сетевое экранирование: Заблокируйте доступ к портам, которые JGroups использует для взаимодействия (обычно это UDP-порты в диапазоне 45588-45900 и TCP-порты 7800-7850), для всех внешних источников. Доступ должен быть разрешен только между узлами кластера.
-
Настройка JGroups (Blacklist/Whitelist): Добавьте параметры фильтрации десериализации в настройки JVM через
local.properties, чтобы запретить десериализацию опасных классов.
tomcat.generaloptions=-Djdk.serialFilter=!org.jgroups.**;!com.sun.rowset.**
- Обновление библиотеки JGroups:
В некоторых случаях помогает ручная замена библиотеки
jgroups-*.jarна версию 4.1.5 или выше в директорияхbin/platform/ext/core/libи соответствующих папках расширений, однако это может нарушить стабильность работы кластера и требует тщательного тестирования.