Headline
CVE-2023-29202: Stored XSS via the RSS macro
XWiki Commons are technical libraries common to several other top level XWiki projects. The RSS macro that is bundled in XWiki included the content of the feed items without any cleaning in the HTML output when the parameter content
was set to true
. This allowed arbitrary HTML and in particular also JavaScript injection and thus cross-site scripting (XSS) by specifying an RSS feed with malicious content. With the interaction of a user with programming rights, this could be used to execute arbitrary actions in the wiki, including privilege escalation, remote code execution, information disclosure, modifying or deleting content and sabotaging the wiki. The issue has been patched in XWiki 14.6 RC1, the content of the feed is now properly cleaned before being displayed. As a workaround, if the RSS macro isn’t used in the wiki, the macro can be uninstalled by deleting WEB-INF/lib/xwiki-platform-rendering-macro-rss-XX.jar
, where XX
is XWiki’s version, in the web application’s directory.
**Type: ** Bug
Resolution: Fixed
**Priority: ** Blocker
- Affects Version/s: 1.8
Development Priority:
High
Documentation in Release Notes:
N/A
The RSS macro (enabled by default) allows to inject arbitrary HTML code including JavaScript into the output.
Steps to reproduce:
Edit the user profile
Click on the “+” icon, select "Other Macros", type “RSS” and select the RSS Macro
Enter https://xssrss.blogspot.com/feeds/posts/default?alt=rss as feed URL and check the “Content” checkbox. In XWiki syntax (2.0), the syntax is:
{{rss feed="https://xssrss.blogspot.com/feeds/posts/default?alt=rss" content="true" /}}
- Click “Submit” to insert the macro
- Click “Save and view”
Expected result:
No scripts are executed.
Actual result:
An alert with content “1” is displayed.
This issue is caused by XWIKI-3344 and thus reproducible since XWiki 1.8 (when using XWiki syntax 2.0, which is available but not default). Note that until XWIKI-4096 (XWiki 2.0 M2) the content has been wrapped in a HTML macro instead of a raw block but this doesn’t prevent the attack.
is caused by
XWIKI-3344 RSS macro 2.0 does not render HTML content in entries descriptions
- Closed
links to
Related news
### Impact The [RSS macro](https://extensions.xwiki.org/xwiki/bin/view/Extension/RSS%20Macro) that is bundled in XWiki included the content of the feed items without any cleaning in the HTML output when the parameter `content` was set to `true`. This allowed arbitrary HTML and in particular also JavaScript injection and thus cross-site scripting (XSS) by specifying an RSS feed with malicious content. With the interaction of a user with programming rights, this could be used to execute arbitrary actions in the wiki, including privilege escalation, remote code execution, information disclosure, modifying or deleting content and sabotaging the wiki. The issue can be reproduced by inserting the following XWiki syntax in any wiki page like the user account: ``` {{rss feed="https://xssrss.blogspot.com/feeds/posts/default?alt=rss" content="true" /}} ``` If an alert is displayed when viewing the page, the wiki is vulnerable. ### Patches The issue has been patched in XWiki 14.6 RC1, the con...