Loading...
Skip to main content

CVE-2024-31987

CRITICAL

XWiki Platform remote code execution from account via custom skins support

Published April 10, 2024Updated April 10, 2024Source: osv

Summary

### Impact Any user who can edit any page like their profile can create a custom skin with a template override that is executed with programming right, thus allowing remote code execution. To reproduce, as a user without edit, script or admin right, add an object of class `XWiki.XWikiSkins` to your profile. Name it whatever you want and set the Base Skin to `flamingo`. Add an object of class `XWikiSkinFileOverrideClass` and set the path to `macros.vm` and the content to: ``` #macro(mediumUserAvatar $username) #resizedUserAvatar($username 50) $services.logging.getLogger('Skin').error("I got programming: $services.security.authorization.hasAccess('programming')") #end ``` Back to your profile, click `Test this skin`. Force a refresh, just in case. If the error "Skin - I got programming: true" gets logged, the installation is vulnerable. ### Patches This has been patched in XWiki 14.10.19, 15.5.4 and 15.10RC1. ### Workarounds We're not aware of any workaround except upgrading. ### References * https://jira.xwiki.org/browse/XWIKI-21478 * https://github.com/xwiki/xwiki-platform/commit/3d4dbb41f52d1a6e39835cfb1695ca6668605a39 (>= 15.8 RC1) * https://github.com/xwiki/xwiki-platform/commit/da177c3c972e797d92c1a31e278f946012c41b56 (< 15.8 RC1)

Remediation

Upgrade to the fixed version using your package manager.

Maven
Update org.xwiki.platform:xwiki-platform-oldcore to 14.10.19 or later
<!-- Update pom.xml dependency version to 14.10.19 for org.xwiki.platform:xwiki-platform-oldcore -->
Maven
Update org.xwiki.platform:xwiki-platform-oldcore to 15.10-rc-1 or later
<!-- Update pom.xml dependency version to 15.10-rc-1 for org.xwiki.platform:xwiki-platform-oldcore -->
Maven
Update org.xwiki.platform:xwiki-platform-oldcore to 15.5.4 or later
<!-- Update pom.xml dependency version to 15.5.4 for org.xwiki.platform:xwiki-platform-oldcore -->

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (3)

PackageEcosystemAffectedFixed In
org.xwiki.platform:xwiki-platform-oldcore
maven
All versions14.10.19
org.xwiki.platform:xwiki-platform-oldcore
maven
All versions15.10-rc-1
org.xwiki.platform:xwiki-platform-oldcore
maven
All versions15.5.4

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

  • CWE-862
    Missing AuthorizationMITRE

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 9.9 score means for each attack dimension.

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

Frequently Asked Questions

What is CVE-2024-31987?
XWiki Platform remote code execution from account via custom skins support This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 9.9/10).
How do I check if my project is affected by CVE-2024-31987?
CVE-2024-31987 affects org.xwiki.platform:xwiki-platform-oldcore. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2024-31987 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
9.9

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-cv55-v6rw-7r5v

Related CVEs

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies