Severity by source
AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
Lifecycle Timeline
5DescriptionGitHub Advisory
XWiki is a generic wiki platform. When editing content that contains "dangerous" macros like malicious script macros that were authored by a user with fewer rights, XWiki warns about the execution of these macros since XWiki 15.9RC1. These required rights analyzers that trigger these warnings are incomplete, allowing an attacker to hide malicious content. For most macros, the existing analyzers don't consider non-lowercase parameters. Further, most macro parameters that can contain XWiki syntax like titles of information boxes weren't analyzed at all. Similarly, the "source" parameters of the content and context macro weren't anylzed even though they could contain arbitrary XWiki syntax. In the worst case, this could allow a malicious to add malicious script macros including Groovy or Python macros to a page that are then executed after another user with programming righs edits the page, thus allowing remote code execution. The required rights analyzers have been made more robust and extended to cover those cases in XWiki 16.4.7, 16.10.3 and 17.0.0.
AnalysisAI
XWiki's macro rights analyzer introduced in version 15.9RC1 contains incomplete validation that allows attackers to hide malicious script macros (Groovy, Python) by exploiting non-lowercase parameter handling and unanalyzed macro parameters. An authenticated attacker with limited privileges can inject hidden malicious macros that execute when a higher-privileged user edits the page, enabling remote code execution. This vulnerability affects XWiki versions 15.9RC1 through 16.4.6, 16.10.0-16.10.2, and 16.x-17.0.0-rc1, with patches available in versions 16.4.7, 16.10.3, and 17.0.0.
Technical ContextAI
XWiki is a Java-based wiki platform that supports dynamic macro execution including dangerous macros (script, Groovy, Python) that require programming rights. The vulnerability stems from incomplete implementation of CWE-357 (Insufficient UI Warning of Dangerous Operations), specifically in the rights analyzer components introduced to warn users about macro execution risks. The root cause involves three distinct gaps: (1) parameter analysis limited to lowercase variants, allowing case-variant bypass; (2) failure to analyze macro parameters containing XWiki syntax such as information box titles; (3) insufficient analysis of 'source' parameters in content and context macros that can embed arbitrary XWiki syntax. The analyzer should prevent users without programming rights from silently injecting executable macros, but the incomplete checks allow obfuscation techniques to bypass these safeguards.
RemediationAI
- priority: CRITICAL; action: Upgrade to patched versions; details: Apply security patches immediately: XWiki 16.4.7, 16.10.3, or 17.0.0 depending on installed branch. These versions include enhanced rights analyzers that properly validate macro parameters regardless of case, analyze parameters containing XWiki syntax, and inspect 'source' parameters in content/context macros.
- priority: HIGH; action: Access control hardening; details: Restrict edit permissions to trusted users only. Disable or restrict macro usage (especially script/Groovy/Python macros) for non-programming users through XWiki permission model. Review existing page history for suspicious macro usage patterns, particularly case-variant parameters or obfuscated source attributes.
- priority: MEDIUM; action: Detection and monitoring; details: Enable audit logging for page edits. Monitor for macros with mixed-case parameters (e.g., 'Script' vs 'script', 'SCRIPT') and 'source' parameters containing embedded syntax. Search wiki content for patterns: {{script...}}, {{groovy...}}, {{python...}} with non-standard casing or source parameter usage.
- priority: LOW; action: Temporary mitigation (if patching delayed); details: Disable dangerous macro types (Script, Groovy, Python) via XWiki configuration if not required for operations. This removes attack surface but may break dependent functionality. Requires configuration rebuild and wiki restart.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
Cross-user flow execution in Langflow (< 1.9.1) lets any authenticated API-key holder run another user's flow by passing
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-18293
GHSA-c32m-27pj-4xcj