GHSA-34fj-r5gq-7395
XWiki Platform: Remote code execution from account via SearchSuggestSourceSheet
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| Maven | org.xwiki.platform:xwiki-platform-search-ui | >= 5.2-milestone-2, < 14.10.20 | 14.10.20 |
| Maven | org.xwiki.platform:xwiki-platform-search-ui | >= 15.0-rc-1, < 15.5.4 | 15.5.4 |
| Maven | org.xwiki.platform:xwiki-platform-search-ui | >= 15.6-rc-1, < 15.10-rc-1 | 15.10-rc-1 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Impact
Any user with edit right on any page can execute any code on the server by adding an object of type `XWiki.SearchSuggestSourceClass` to their user profile or any other page. This compromises the confidentiality, integrity and availability of the whole XWiki installation.
To reproduce on an instance, as a user without script nor programming rights, add an object of type `XWiki.SearchSuggestSourceClass` to your profile page. On this object, set every possible property to `}}}{{async}}{{groovy}}println("Hello from Groovy!"){{/groovy}}{{/async}}` (i.e., name, engine, service, query, limit and icon). Save and display the page, then append `?sheet=XWiki.SearchSuggestSourceSheet` to the URL. If any property displays as `Hello from Groovy!}}}`, then the instance is vulnerable.
### Patches
This vulnerability has been patched in XWiki 14.10.20, 15.5.4 and 15.10 RC1.
### Workarounds
[This patch](https://github.com/xwiki/xwiki-platform/commit/6a7f19f6424036fce3d703413137adde950ae809#diff-67b473d2b6397d65b7726c6a13555850b11b10128321adf9e627e656e1d130a5) can be manually applied to the document `XWiki.SearchSuggestSourceSheet`.
### References
* https://jira.xwiki.org/browse/XWIKI-21474
* https://github.com/xwiki/xwiki-platform/commit/6a7f19f6424036fce3d703413137adde950ae809
References
External links from the advisory. They lead to third-party sites.
- https://github.com/xwiki/xwiki-platform/security/advisories/GHSA-34fj-r5gq-7395
- https://nvd.nist.gov/vuln/detail/CVE-2024-31465
- https://github.com/xwiki/xwiki-platform/commit/0317a3aa78065e66c86fc725976b06bf7f9b446e
- https://github.com/xwiki/xwiki-platform/commit/2740974c32dbb7cc565546d0f04e2374b32b36f7
- https://github.com/xwiki/xwiki-platform/commit/6a7f19f6424036fce3d703413137adde950ae809
- https://github.com/xwiki/xwiki-platform/commit/6a7f19f6424036fce3d703413137adde950ae809#diff-67b473d2b6397d65b7726c6a13555850b11b10128321adf…
- https://github.com/xwiki/xwiki-platform
- https://jira.xwiki.org/browse/XWIKI-21474