Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') in org.xwiki.platform:xwiki-platform-menu-ui
Critical severity
GitHub Reviewed
Published
Nov 21, 2022
in
xwiki/xwiki-platform
•
Updated Jun 27, 2023
Package
Affected versions
< 13.10.8
>= 14.0.0, < 14.4.3
Patched versions
13.10.8
14.4.3
Description
Published to the GitHub Advisory Database
Nov 21, 2022
Reviewed
Nov 21, 2022
Published by the National Vulnerability Database
Nov 23, 2022
Last updated
Jun 27, 2023
Impact
Any user with view rights on commonly accessible documents including the menu macro can execute arbitrary Groovy, Python or Velocity code in XWiki leading to full access to the XWiki installation due to improper escaping of the macro content and parameters of the menu macro.
The issue can be demonstrated by opening
<server>/xwiki/bin/view/Main?sheet=CKEditor.HTMLConverter&language=en&sourceSyntax=xwiki%2F2.1&stripHTMLEnvelope=true&fromHTML=false&toHTML=true&text=%7B%7Bmenu%7D%7D%7B%7Bcache+id%3D%22menuMacro%22%7D%7D%7B%7Bgroovy%7D%7Dprintln%28%22Hello+from+Groovy%21%22%29%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fcache%7D%7D%7B%7B%2Fmenu%7D%7D
where<server>
is the URL of the XWiki installation. If this displays "Hello from Groovy!", the installation is vulnerable.Patches
The problem has been patched in XWiki 14.6RC1, 13.10.8 and 14.4.3.
Workarounds
The patch for the document
Menu.MenuMacro
can be manually applied or a XAR archive of a patched version can be imported. The menu macro was basically unchanged since XWiki 11.6 so on XWiki 11.6 or later the patch for version of 13.10.8 can most likely be applied, on XWiki version 14.0 and later the versions in XWiki 14.6 and 14.4.3 should be appropriate.References
For more information
If you have any questions or comments about this advisory:
References