XWiki Platform is a generic wiki platform. Starting in 4.5-rc-1 and prior to versions 14.10.15, 15.5.2, and 15.7-rc-1, the search administration interface doesn't properly escape the id and label of search user interface extensions, allowing the injection of XWiki syntax containing script macros including Groovy macros that allow remote code execution, impacting the confidentiality, integrity and availability of the whole XWiki instance. This attack can be executed by any user who can edit some wiki page like the user's profile (editable by default) as user interface extensions that will be displayed in the search administration can be added on any document by any user. The necessary escaping has been added in XWiki 14.10.15, 15.5.2 and 15.7RC1. As a workaround, the patch can be applied manually applied to the page `XWiki.SearchAdmin`.
The search administration interface (`XWiki.SearchAdmin`) does not apply proper escaping for the `id` and `label` fields of UI extensions. An attacker can inject XWiki syntax containing script macros, including server-side executed Groovy macros, into these fields. Since UI extensions can be added to any document (e.g., a user profile, which is editable by default), the attack requires no elevated privileges — only an account with the right to edit wiki pages.
An attacker can gain full remote code execution (RCE) on the server hosting the XWiki instance, which directly violates the confidentiality, integrity, and availability of the entire platform.
Update XWiki Platform to version 14.10.15, 15.5.2, or 15.7-rc-1 (or newer). If an update is not possible, you can manually apply a patch directly on the `XWiki.SearchAdmin` page according to the commit available in the vendor's references.
XWiki Platform in versions from 4.5-rc-1 to 14.10.14 inclusive and from 15.0 to 15.5.1 inclusive (before 14.10.15, 15.5.2, and 15.7-rc-1)
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HXwiki
APPXwiki15.615.74.5 – 14.10.5 (bez)15.0 – 15.5.2 (bez)
Related vulnerabilities
XWiki Platform — niezautoryzowany RCE przez endpoint SolrSearch
XWiki Platform — path traversal umożliwia odczyt plików konfiguracyjnych
XWiki Platform: ujawnienie plików konfiguracyjnych przez webjars API (path traversal)
SQL Injection w XWiki Platform via parametr sort w getdeleteddocuments.vm
XWiki Rendering: bypass trybu restricted przez zagnieżdżone makra