GitHub Advisoryadvisory · Maven

GHSA-2858-8cfx-69m9 XWiki Platform: Remote code execution as guest via DatabaseSearch

CRITICAL Published 2024-04-10 Modified 2025-09-26 Official page ↗
Aliases
CVE-2024-31982
Ecosystem
Maven
Packages
org.xwiki.platform:xwiki-platform-search-ui
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Weaknesses
CWE-94, CWE-95
Reviewed
2024-04-10

Affected packages

• Maven org.xwiki.platform:xwiki-platform-search-ui: >= 2.4-milestone-1, < 14.10.20 → fixed in 14.10.20 • Maven org.xwiki.platform:xwiki-platform-search-ui: >= 15.0-rc-1, < 15.5.4 → fixed in 15.5.4 • Maven org.xwiki.platform:xwiki-platform-search-ui: >= 15.6-rc-1, < 15.10-rc-1 → fixed in 15.10-rc-1

Description

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 `/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 contains `Hello 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 • https://jira.xwiki.org/browse/XWIKI-21472 • https://github.com/xwiki/xwiki-platform/commit/95bdd6cc6298acdf7f8f21298d40eeb8390a8565

Related

Alias · CVE (1)

  • CVE-2024-31982 XWiki Platform is a generic wiki platform. vulnerability

Weakness · CWE (2)

  • CWE-94 Improper Control of Generation of Code weakness
  • CWE-95 Improper Neutralization of Directives in Dynamically Evaluated Code weakness

References