Skip to content

XWiki Platform remote code execution from account through UIExtension parameters

Critical severity GitHub Reviewed Published Apr 10, 2024 in xwiki/xwiki-platform • Updated Apr 21, 2024

Package

maven org.xwiki.platform:xwiki-platform-uiextension-api (Maven)

Affected versions

< 14.10.19
>= 15.0-rc-1, < 15.5.4
>= 15.6-rc-1, < 15.9-rc-1

Patched versions

14.10.19
15.5.4
15.9-rc-1

Description

Impact

Parameters of UI extensions are always interpreted as Velocity code and executed with programming rights. Any user with edit right on any document like the user's own profile can create UI extensions. This allows remote code execution and thereby impacts the confidentiality, integrity and availability of the whole XWiki installation.

To reproduce, edit your user profile with the object editor and add a UIExtension object with the following values:

Extension Point ID: org.xwiki.platform.panels.Applications
Extension ID: platform.panels.myFakeApplication
Extension parameters: 
label=I got programming right: $services.security.authorization.hasAccess('programming')
target=Main.WebHome
targetQueryString=
icon=icon:bomb
Extension Scope: "Current User".

Save the document and open any document. If an application entry with the text "I got programming right: true" is displayed, the attack succeeded, if the code in "label" is displayed literally, the XWiki installation isn't vulnerable.

Patches

This vulnerability has been patched in XWiki 14.10.19, 15.5.4 and 15.9-RC1.

Workarounds

We're not aware of any workarounds apart from upgrading.

References

References

@michitux michitux published to xwiki/xwiki-platform Apr 10, 2024
Published to the GitHub Advisory Database Apr 10, 2024
Reviewed Apr 10, 2024
Published by the National Vulnerability Database Apr 10, 2024
Last updated Apr 21, 2024

Severity

Critical
10.0
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

Weaknesses

CVE ID

CVE-2024-31997

GHSA ID

GHSA-c2gg-4gq4-jv5j

Source code

Checking history
See something to contribute? Suggest improvements for this vulnerability.