The "restricted" mode of the HTML cleaner in XWiki, introduced in version 4.2-milestone-1, only escaped <script>
and <style>
-tags but neither attributes that can be used to inject scripts nor other dangerous HTML tags like <iframe>
. As a consequence, any code relying on this "restricted" mode for security is vulnerable to JavaScript injection ("cross-site scripting"/XSS). An example are anonymous comments in XWiki where the HTML macro filters HTML using restricted mode:
{{html}}
<a href='' onclick='alert(1)'>XSS</a>
{{/html}}
When a privileged user with programming rights visits such a comment in XWiki, the malicious JavaScript code is executed in the context of the user session. This allows server-side code execution with programming rights, impacting the confidentiality, integrity and availability of the XWiki instance.
This problem has been patched in XWiki 14.6 RC1 with the introduction of a filter with allowed HTML elements and attributes that is enabled in restricted mode.
There are no known workarounds apart from upgrading to a version including the fix.
If you have any questions or comments about this advisory: * Open an issue in Jira XWiki * Email us at XWiki Security mailing-list
{ "nvd_published_at": "2023-04-15T15:15:00Z", "github_reviewed_at": "2023-04-12T20:38:17Z", "severity": "CRITICAL", "github_reviewed": true, "cwe_ids": [ "CWE-79" ] }