Cyber Resilience

CVE-2024-37901

RCE in Xwiki 9.2 – 14.10.21

Published
31 July 2024
Modified
06 September 2024
Patch / advisory
CVSS Score v3.1 9.9
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
EPSS Score 0.011 61th percentile
Risk Priority 77 floored blend · peak EPSS

Summary

CVE-2024-37901 is a critical-severity Eval Injection (CWE-95) vulnerability in Xwiki Xwiki. Its CVSS base score is 9.9 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique JavaScript (T1059.007); ranked in the top 39% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to AC-24 (Access Control Decisions) and AC-25 (Reference Monitor) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

XWiki Platform, a generic wiki platform, contains a remote code execution vulnerability that permits arbitrary code execution through improper handling of SearchSuggestConfig and SearchSuggestSourceClass objects. The flaw stems from missing authorization checks combined with unsafe code evaluation, allowing injection of executable content. It affects all installations prior to the listed patch releases and carries a CVSS score of 9.9 due to its network-accessible, low-complexity nature and full impact on confidentiality, integrity, and availability.

Any authenticated user granted edit rights on at least one page can exploit the issue by creating instances of the affected classes on their user profile or another accessible document. Successful exploitation grants the attacker full remote code execution privileges over the XWiki installation, enabling complete compromise of the underlying system and all hosted content.

The official GitHub Security Advisory and accompanying commits indicate that the vulnerability is resolved in XWiki 14.10.21, 15.5.5, and 15.10.2. Administrators are advised to upgrade to one of these versions; the referenced patches restrict object instantiation and enforce proper authorization around the Search Suggest configuration classes.

EPSS remains flat at 0.0974 with no material increase since disclosure.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

XWiki Platform is a generic wiki platform offering runtime services for applications built on top of it. Any user with edit right on any page can perform arbitrary remote code execution by adding instances of `XWiki.SearchSuggestConfig` and `XWiki.SearchSuggestSourceClass` to their…

more

user profile or any other page. This compromises the confidentiality, integrity and availability of the whole XWiki installation. This vulnerability has been patched in XWiki 14.10.21, 15.5.5 and 15.10.2.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1059.007 JavaScript Execution
Adversaries may abuse various implementations of JavaScript for execution.
T1059 Command and Scripting Interpreter Execution
Adversaries may abuse command and script interpreters to execute commands, scripts, or binaries.
T1059.001 PowerShell Execution
Adversaries may abuse PowerShell commands and scripts for execution.
T1059.002 AppleScript Execution
Adversaries may abuse AppleScript for execution.
T1059.004 Unix Shell Execution
Adversaries may abuse Unix shell commands and scripts for execution.
T1059.005 Visual Basic Execution
Adversaries may abuse Visual Basic (VB) for execution.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-31981Same product: Xwiki Xwiki
CVE-2024-55876Same product: Xwiki Xwiki
CVE-2024-37898Same product: Xwiki Xwiki
CVE-2025-46554Same product: Xwiki Xwiki
CVE-2025-46557Same product: Xwiki Xwiki
CVE-2023-41046Same product: Xwiki Xwiki
CVE-2024-31997Same product: Xwiki Xwiki
CVE-2024-55879Same product: Xwiki Xwiki
CVE-2025-32973Same product: Xwiki Xwiki
CVE-2025-23025Same product: Xwiki Xwiki

Affected Assets

xwiki
xwiki
9.2 — 14.10.21 · 15.0 — 15.5.5 · 15.6 — 15.10.2

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 5 hardening rules · 3 OS baselines
Validate
Prove the fix (OWASP ASVS)
  • V1.3.1
  • V1.3.2

Mitigating Controls (NIST 800-53 r5) AI

AC-3 directly requires enforcement of authorization decisions on every access request, structurally eliminating missing authorization checks.

AC-24 mandates that access control decisions are applied to each request, preventing bypass of authorization logic.

AC-25 requires a tamperproof, always-invoked reference monitor that ensures authorization checks cannot be omitted.

Developer testing and code analysis can discover eval-injection flaws but does not stop their introduction.

Input validation explicitly requires neutralizing untrusted data before it reaches dynamic evaluation constructs such as eval.

AC-6 reduces the set of actions reachable without proper authorization, limiting blast radius of missing checks.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-05 full match
prevents

Explicitly requires defining, enforcing, and reviewing authorizations and least privilege, directly preventing missing authorization checks.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly require input neutralization and avoidance of unsafe dynamic evaluation.

PR.DS-10 none match
prevents

PR.DS-10 protects runtime data confidentiality/integrity but has no bearing on neutralizing externally influenced input during code generation, so neither direction shows any preventive effect.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development can detect eval injection vulnerabilities before deployment.

prevents

Requiring authentication and credentials before any access occurs eliminates the absence of authorization checks that would otherwise allow an unauthenticated actor to reach protected resources.

prevents

Requiring formal authorization of every access request before rights are granted ensures that checks for required permissions are performed, preventing missing authorization checks from being introduced.

prevents

Mandatory authorization checks and central records of granted rights ensure that every access attempt is preceded by an explicit decision rather than relying on missing checks.

mitigates

Segregating the approval of access rights from their implementation provides an independent check that reduces the impact of missing authorization checks in the resulting system configuration.

finds

By requiring competent outsiders to verify that every function enforces the need-to-know principle, the control lowers the likelihood that missing authorization checks persist undetected.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (2 rules)
  • V-248581 OL 8 must require users to provide a password for privilege escalation. prevents CWE-862
  • V-252656 The OL 8 operating system must not be configured to bypass password requirements for privilege escalation. prevents CWE-862
RHEL 7 (2 rules)
  • V-251704 The Red Hat Enterprise Linux operating system must not be configured to bypass password requirements for privilege escalation. prevents CWE-862
  • V-204429 The Red Hat Enterprise Linux operating system must be configured so that users must provide a password for privilege escalation. prevents CWE-862

References