Overview
@webiny/react-rich-text-renderer is a react component to render data coming from Webiny Headless CMS and Webiny Form Builder. The @webiny/react-rich-text-renderer package depends on the editor.js rich text editor to handle rich text content. The CMS stores rich text content from the editor.js into the database. When the @webiny/react-rich-text-renderer is used to render such content, it uses the dangerouslySetInnerHTML prop, without applying HTML sanitization. The issue arises when an actor, who in this context would specifically be a content manager with access to the CMS, inserts a malicious script as part of the user-defined input. This script is then injected and executed within the user's browser when the main page or admin page loads.
Am I affected?
You will be affected if you're running a Webiny project created prior to 5.35.0 and you're using the legacy rich text editor (which uses editor.js library under the hood). If you've already switched to using the new rich text editor, powered by Lexical editor, you will not be affected by this.
How do I patch this vulnerability?
Update to Webiny version 5.37.2.
Overview
@webiny/react-rich-text-rendereris a react component to render data coming from Webiny Headless CMS and Webiny Form Builder. The@webiny/react-rich-text-rendererpackage depends on the editor.js rich text editor to handle rich text content. The CMS stores rich text content from theeditor.jsinto the database. When the@webiny/react-rich-text-rendereris used to render such content, it uses thedangerouslySetInnerHTMLprop, without applying HTML sanitization. The issue arises when an actor, who in this context would specifically be a content manager with access to the CMS, inserts a malicious script as part of the user-defined input. This script is then injected and executed within the user's browser when the main page or admin page loads.Am I affected?
You will be affected if you're running a Webiny project created prior to
5.35.0and you're using the legacy rich text editor (which useseditor.jslibrary under the hood). If you've already switched to using the new rich text editor, powered by Lexical editor, you will not be affected by this.How do I patch this vulnerability?
Update to Webiny version
5.37.2.