CVE-2017-10271
Oracle WebLogic Server
2022-02-10
Oracle Corporation WebLogic Server contains a vulnerability that allows for remote code execution.
Технический анализ и план устранения
Суть уязвимости
Уязвимость в компоненте WLS Security (подкомпонент wls-wsat.war) Oracle WebLogic Server. Атакующий может отправить специально сформированный XML-запрос по протоколу HTTP на порт, где работает WLS (часто 7001). Это позволяет выполнить произвольный код на сервере с правами пользователя, под которым запущен экземпляр WebLogic.
Как исправить
Установите официальный патч от Oracle. Патч зависит от версии вашего WebLogic Server.
-
Определите точную версию WebLogic Server:
bash cd /путь/к/домену_weblogic/bin . ./setDomainEnv.sh java weblogic.version -
Установите соответствующий патч (Critical Patch Update - CPU):
- Для версий 10.3.6.0: Установите патч p27395085_1036_Generic (входит в состав CPU за октябрь 2017).
- Для версий 12.1.3.0: Установите патч p27395085_121300_Generic (входит в состав CPU за октябрь 2017).
- Для версий 12.2.1.0, 12.2.1.1, 12.2.1.2: Установите патч p27395085_122110_Generic (входит в состав CPU за октябрь 2017).
Патчи необходимо скачать с портала поддержки Oracle (My Oracle Support) и установить с помощью утилиты
opatch.Пример установки патча для 12.2.1.2: ```bash
Остановите все серверы управляемого домена и Admin Server
cd /путь/к/ORACLE_HOME unzip /путь/к/скачанному/патчу/p27395085_122110_Generic.zip cd 27395085 $ORACLE_HOME/OPatch/opatch apply ```
Временное решение
Если немедленная установка патча невозможна, выполните следующие действия:
-
Удалите или переименуйте уязвимый компонент:
bash # Найти и удалить/переименовать файл wls-wsat.war find /путь/к/ORACLE_HOME -name "wls-wsat.war" -type f # Пример для типичного расположения: mv /путь/к/ORACLE_HOME/user_projects/domains/ВАШ_ДОМЕН/servers/AdminServer/tmp/_WL_internal/wls-wsat /путь/к/ORACLE_HOME/user_projects/domains/ВАШ_ДОМЕН/servers/AdminServer/tmp/_WL_internal/wls-wsat.BAKВажно: После этого необходимо перезапустить все экземпляры WebLogic Server. -
Ограничьте доступ с помощью брандмауэра:
- Настройте правила Network Security Group (NSG) / Security Groups / iptables, чтобы разрешить входящие подключения к портам WebLogic (например, 7001) только с доверенных IP-адресов (административных серверов, сегментов приложений).
-
Настройте WAF (Web Application Firewall):
- Добавьте правило для блокировки HTTP-запросов, содержащих в теле (
POST-данных) строки:wls-wsatAsyncResponseServiceAsyncResponseServiceHttpsWorkArea
- Добавьте правило для блокировки HTTP-запросов, содержащих в теле (