Any user with view rights can execute arbitrary Groovy, Python or Velocity code in XWiki leading to full access to the XWiki installation. The root cause is improper escaping of UIX parameters
A proof of concept exploit is to log in, add an XWiki.UIExtensionClass
xobject to the user profile page, with an Extension Parameters content of:
order=100
label={{/html}} {{async async="true" cached="false" context="doc.reference"}}{{groovy}}println("Hello " + "from groovy!"){{/groovy}}{{/async}}
icon=icon:pencil
target=XWiki.username
Then, navigating to PanelsCode.ApplicationsPanelConfigurationSheet
(i.e., <xwiki-host>/xwiki/bin/view/PanelsCode/ApplicationsPanelConfigurationSheet
where <xwiki-host>
is the URL of your XWiki installation) should not execute the Groovy script. If it does, you will see Hello from groovy!
displayed on the screen.
The vulnerability has been patched in XWiki 13.10.11, 14.4.7 and 14.10-rc-1
The issue can be fixed by editing the PanelsCode.ApplicationsPanelConfigurationSheet
wiki page and making the same modifications as shown in the patch for this issue.
If you have any questions or comments about this advisory: * Open an issue in Jira XWiki.org * Email us at Security Mailing List
{ "nvd_published_at": "2023-03-07T19:15:00Z", "github_reviewed_at": "2023-03-08T17:18:33Z", "severity": "CRITICAL", "github_reviewed": true, "cwe_ids": [ "CWE-74" ] }