CVE-2024-20953
Oracle Agile Product Lifecycle Management (PLM)
2025-02-24
Oracle Agile Product Lifecycle Management (PLM) contains a deserialization vulnerability that allows a low-privileged attacker with network access via HTTP to compromise the system.
Технический анализ и план устранения
Суть уязвимости
CVE-2024-20953 представляет собой критическую уязвимость в компоненте Oracle Agile PLM (Framework), связанную с небезопасной десериализацией данных. Проблема возникает из-за того, что приложение некорректно обрабатывает входные объекты, передаваемые через HTTP-запросы.
Злоумышленник с низкими привилегиями и сетевым доступом может отправить специально сформированный сериализованный объект. При попытке сервера восстановить этот объект происходит выполнение произвольного кода (RCE) в контексте безопасности приложения. Это позволяет атакующему полностью скомпрометировать сервер, получить доступ к конфиденциальным данным PLM-системы или использовать узел для дальнейшего продвижения по внутренней сети.
Как исправить
Основным и единственным надежным способом устранения уязвимости является установка официального патча от Oracle в рамках Critical Patch Update (CPU).
- Перейдите на портал My Oracle Support (MOS).
- Найдите раздел обновлений для Oracle Agile PLM версий 9.3.6.
- Скачайте и примените соответствующий Patch Set Update (PSU) или исправление, выпущенное в январе 2024 года (или более позднее).
- Перед установкой на продуктивную среду обязательно протестируйте патч на тестовом стенде.
Типовой процесс установки патча (может варьироваться в зависимости от версии ОС и конфигурации):
unzip p36123456_9360_Generic.zip -d /u01/app/oracle/patches/
cd /u01/app/oracle/patches/36123456
opatch apply
Временные меры
Если немедленная установка патча невозможна, необходимо минимизировать риски с помощью компенсационных мер контроля:
-
Ограничение сетевого доступа: Настройте правила Firewall или списки контроля доступа (ACL), чтобы ограничить доступ к интерфейсу Agile PLM только для доверенных IP-адресов и сегментов сети.
-
Использование Web Application Firewall (WAF): Настройте WAF для фильтрации подозрительных POST-запросов, содержащих сериализованные объекты Java (например, проверяйте наличие сигнатур
rO0ABв Base64-кодированных данных). -
Мониторинг журналов: Настройте алерты на необычную активность в логах WebLogic и Agile PLM, особенно на ошибки десериализации или попытки обращения к подозрительным классам.
-
Проверка прав доступа: Убедитесь, что учетные записи пользователей имеют минимально необходимые привилегии, чтобы ограничить возможности атакующего на этапе эксплуатации.
-
Перезапуск служб: После внесения любых конфигурационных изменений или очистки временных файлов выполните перезапуск сервера приложений:
stopAgile.sh
startAgile.sh