CVE Vulnerabilities

CVE-2023-40573

Improper Access Control

Published: Aug 24, 2023 | Modified: Nov 21, 2024
CVSS 3.x
8.8
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu

XWiki Platform is a generic wiki platform offering runtime services for applications built on top of it. XWiki supports scheduled jobs that contain Groovy scripts. Currently, the job checks the content author of the job for programming right. However, modifying or adding a job script to a document doesnt modify the content author. Together with a CSRF vulnerability in the job scheduler, this can be exploited for remote code execution by an attacker with edit right on the wiki. If the attack is successful, an error log entry with Job content executed will be produced. This vulnerability has been patched in XWiki 14.10.9 and 15.4RC1.

Weakness

The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor.

Affected Software

Name Vendor Start Version End Version
Xwiki Xwiki * 14.10.9 (excluding)
Xwiki Xwiki 15.0 (including) 15.0 (including)
Xwiki Xwiki 15.0-rc1 (including) 15.0-rc1 (including)
Xwiki Xwiki 15.1 (including) 15.1 (including)
Xwiki Xwiki 15.1-rc1 (including) 15.1-rc1 (including)
Xwiki Xwiki 15.2 (including) 15.2 (including)
Xwiki Xwiki 15.2-rc1 (including) 15.2-rc1 (including)
Xwiki Xwiki 15.3 (including) 15.3 (including)
Xwiki Xwiki 15.3-rc1 (including) 15.3-rc1 (including)

Extended Description

Access control involves the use of several protection mechanisms such as:

When any mechanism is not applied or otherwise fails, attackers can compromise the security of the product by gaining privileges, reading sensitive information, executing commands, evading detection, etc. There are two distinct behaviors that can introduce access control weaknesses:

Potential Mitigations

  • Compartmentalize the system to have “safe” areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area.
  • Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.

References