9.9 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
LOW
User Interaction
NONE
Scope
CHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
0.002 Low
EPSS
Percentile
52.9%
Any user with view rights on commonly accessible documents including the legacy notification activity macro can execute arbitrary Groovy, Python or Velocity code in XWiki leading to full access to the XWiki installation. The root cause is improper escaping of the macro parameters of the legacy notification activity macro. This macro is installed by default in XWiki.
A proof of concept exploit is
{{activity wikis="~" /~}~} {{async async=~"true~" cached=~"false~" context=~"doc.reference~"~}~}{{groovy~}~}println(~"Hello from Groovy!~"){{/groovy~}~}"/}}
If the output of this macro is
The [notifications] macro is a standalone macro and it cannot be used inline. Click on this message for details.
Hello from Groovy!" displayMinorEvents="false" displayRSSLink="false" /}}
or similar, the XWiki installation is vulnerable. The vulnerability can be exploited via every wiki page that is editable including the user’s profile, but also with just view rights using the HTMLConverter that is part of the CKEditor integration which is bundled with XWiki.
The vulnerability has been patched in XWiki 13.10.11, 14.4.7 and 14.10.
The issue can be fixed by replacing the code of the legacy notification activity macro by the patched version. Alternatively, if the macro isn’t used, the document XWiki.Notifications.Code.Legacy.ActivityMacro
can also be completely deleted.
If you have any questions or comments about this advisory: