Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-3x59-vrmc-5mx6

Опубликовано: 24 авг. 2023
Источник: github
Github: Прошло ревью
CVSS3: 4.8

Описание

@webiny/react-rich-text-renderer vulnerable to insecure rendering of rich text content

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.

Пакеты

Наименование

@webiny/react-rich-text-renderer

npm
Затронутые версииВерсия исправления

<= 5.37.1

5.37.2

EPSS

Процентиль: 47%
0.00243
Низкий

4.8 Medium

CVSS3

Дефекты

CWE-79

Связанные уязвимости

CVSS3: 4.8
nvd
больше 2 лет назад

@webiny/react-rich-text-renderer before 5.37.2 allows XSS attacks by content managers. This is a react component to render data coming from Webiny Headless CMS and Webiny Form Builder. Webiny is an open-source serverless enterprise CMS. 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.

EPSS

Процентиль: 47%
0.00243
Низкий

4.8 Medium

CVSS3

Дефекты

CWE-79