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
or rendercontent
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.
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.
The patch can be manually applied to the rendercontent.vm
template in an existing installation to patch this vulnerability without upgrading.
{ "nvd_published_at": "2023-06-23T15:15:09Z", "cwe_ids": [ "CWE-79" ], "severity": "CRITICAL", "github_reviewed": true, "github_reviewed_at": "2023-06-20T16:44:35Z" }