XWiki Platform: Remote code execution as guest via DatabaseSearch
Critical severity
GitHub Reviewed
Published
Apr 10, 2024
in
xwiki/xwiki-platform
•
Updated Aug 8, 2024
Package
Affected versions
>= 2.4-milestone-1, < 14.10.20
>= 15.0-rc-1, < 15.5.4
>= 15.6-rc-1, < 15.10-rc-1
Patched versions
14.10.20
15.5.4
15.10-rc-1
Description
Published to the GitHub Advisory Database
Apr 10, 2024
Reviewed
Apr 10, 2024
Published by the National Vulnerability Database
Apr 10, 2024
Last updated
Aug 8, 2024
Impact
XWiki's database search allows remote code execution through the search text. This allows remote code execution for any visitor of a public wiki or user of a closed wiki as the database search is by default accessible for all users. This impacts the confidentiality, integrity and availability of the whole XWiki installation.
To reproduce on an instance, without being logged in, go to
<hostname>/xwiki/bin/get/Main/DatabaseSearch?outputSyntax=plain&text=%7D%7D%7D%7B%7Basync%20async%3Dfalse%7D%7D%7B%7Bgroovy%7D%7Dprintln%28%22Hello%20from%22%20%2B%20%22%20search%20text%3A%22%20%2B%20%2823%20%2B%2019%29%29%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fasync%7D%7D%20
. If the title of the RSS channel containsHello from search text:42
, the instance is vulnerable.Patches
This vulnerability has been patched in XWiki 14.10.20, 15.5.4 and 15.10RC1.
Workarounds
It is possible to manually apply this patch to the page
Main.DatabaseSearch
. Alternatively, unless database search is explicitly used by users, this page can be deleted as this is not the default search interface of XWiki.References
References