CVE-2025-24893
XWiki Platform
2025-10-30
XWiki Platform contains an eval injection vulnerability that could allow any guest to perform arbitrary remote code execution through a request to SolrSearch.
Технический анализ и план устранения
Суть уязвимости
Уязвимость CVE-2025-24893 в XWiki Platform связана с небезопасным использованием функции eval (Eval Injection) в компоненте SolrSearch.
В XWiki страницы часто используют серверные скрипты (Velocity, Groovy) для динамического рендеринга контента. Если пользовательский ввод передается в макрос или функцию оценки (eval) без должной очистки и валидации, злоумышленник может внедрить собственный исполняемый код.
Поскольку уязвимость находится в компоненте поиска (SolrSearch), к которому по умолчанию имеют доступ неавторизованные пользователи (гости), любой внешний атакующий может отправить специально сформированный HTTP-запрос. Этот запрос заставит сервер выполнить произвольный код (RCE — Remote Code Execution) с правами процесса XWiki, что может привести к полной компрометации сервера, краже данных или установке бэкдоров.
Как исправить
Единственным надежным способом устранения уязвимости является обновление XWiki Platform до версии, в которой данный недостаток исправлен (рекомендуется свериться с официальным бюллетенем безопасности XWiki для выбора актуальной LTS или стабильной ветки).
Если вы используете пакетный менеджер (на примере Debian/Ubuntu):
apt-get update
apt-get install --only-upgrade xwiki-tomcat9-pgsql
(Примечание: имя пакета может отличаться в зависимости от используемого сервера приложений и базы данных, например xwiki-tomcat9-mysql)
Если вы используете Docker (на примере docker-compose):
docker-compose pull
docker-compose up -d
После обновления обязательно перезапустите службу XWiki и проверьте логи на наличие ошибок миграции базы данных.
Временные меры
Если немедленное обновление системы невозможно, необходимо применить компенсирующие меры для снижения риска эксплуатации:
- Ограничение прав доступа к странице SolrSearch:
- Авторизуйтесь в XWiki с правами администратора.
- Перейдите на страницу
Main.SolrSearch(или соответствующую страницу поиска, указанную в advisory). - Откройте меню редактирования прав доступа (Access Rights).
-
Запретите право "View" (Просмотр) для неавторизованных пользователей (Unauthenticated Users / Guests). Это предотвратит эксплуатацию уязвимости без наличия учетной записи.
-
Отключение гостевого доступа (если применимо для вашей бизнес-логики):
- Перейдите в раздел администрирования (Administer Wiki).
-
В разделе "Users & Rights" -> "Rights" снимите галочку "View" для группы "Unauthenticated Users" на уровне всей вики.
-
Настройка Web Application Firewall (WAF):
- Создайте правила WAF для блокировки HTTP-запросов к эндпоинту SolrSearch, содержащих характерные сигнатуры серверных шаблонизаторов.
-
Блокируйте запросы, содержащие символы и конструкции Velocity/Groovy в параметрах поиска, такие как
#set,$services,$xwiki,java.lang.Runtime. -
Патч уязвимой страницы вручную:
- Если официальный патч предоставляет исправленный код страницы (XML-файл), вы можете импортировать его через раздел администрирования (Import), перезаписав уязвимую версию
Main.SolrSearchбез полного обновления платформы.