XWiki vulnerable to stored cross-site scripting via any wiki document and the displaycontent/rendercontent template
Critical severity
GitHub Reviewed
Published
Jun 20, 2023
in
xwiki/xwiki-platform
•
Updated Nov 4, 2023
Description
Published to the GitHub Advisory Database
Jun 20, 2023
Reviewed
Jun 20, 2023
Published by the National Vulnerability Database
Jun 23, 2023
Last updated
Nov 4, 2023
Impact
Any user who can edit a document in a wiki like the user profile can create a stored XSS attack by putting plain HTML code into that document and then tricking another user to visit that document with the
displaycontent
orrendercontent
template and plain output syntax. For example, edit any document with the wiki editor and set the content to<script>alert(1)</script>
, save and then append the parameters?viewer=displaycontent&sheet=&outputSyntax=plain
. If this displays an alert, the installation is vulnerable. If a user with programming rights is tricked into visiting such a URL, arbitrary actions be performed with this user's rights, impacting the confidentiality, integrity, and availability of the whole XWiki installation.Patches
This has been patched in XWiki 14.4.8, 14.10.5 and 15.1RC1 by setting the content type of the response to plain text when the output syntax is not an HTML syntax.
Workarounds
The patch can be manually applied to the
rendercontent.vm
template in an existing installation to patch this vulnerability without upgrading.References
References