Notesnook — приложение для создания заметок. До версии 3.3.11 в Интернете/настольных компьютерах и 3.3.17 в Android/iOS сохраненный XSS в потоке рендеринга Web Clipper можно было передать на удаленное выполнение кода в настольном приложении. Основная причина заключается в том, что клиппер сохраняет контролируемые злоумышленником атрибуты из корневого элемента исходной страницы и сохраняет их внутри HTML-кода веб-клипа.
Когда клип позже открывается, Notesnook визуализирует этот HTML в iframe того же происхождения, не изолированный от песочницы, используя `contentDocument.write(...)`. Атрибуты обработчика событий, такие как onload, onclick или onmouseover, выполняются в источнике Notesnook. В настольном приложении это становится RCE, поскольку Electron настроен с параметрами nodeIntegration: true и contextIsolation: false.
Версия 3.3.11 для Интернета/настольного компьютера и 3.3.17 для Android/iOS исправляют эту проблему.
Показать оригинальное описание (EN)
Notesnook is a note-taking app. Prior to version 3.3.11 on Web/Desktop and 3.3.17 on Android/iOS, a stored XSS in the Web Clipper rendering flow can be escalated to remote code execution in the desktop app. The root cause is that the clipper preserves attacker-controlled attributes from the source page’s root element and stores them inside web-clip HTML. When the clip is later opened, Notesnook renders that HTML into a same-origin, unsandboxed iframe using `contentDocument.write(...)`. Event-handler attributes such as `onload`, `onclick`, or `onmouseover` execute in the Notesnook origin. In the desktop app, this becomes RCE because Electron is configured with `nodeIntegration: true` and `contextIsolation: false`. Version 3.3.11 Web/Desktop and 3.3.17 on Android/iOS patch the issue.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 3
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Streetwriters Notesnook_Desktop
cpe:2.3:a:streetwriters:notesnook_desktop:*:*:*:*:*:*:*:*
|
— |
3.3.11
|
|
Streetwriters Notesnook_Mobile
cpe:2.3:a:streetwriters:notesnook_mobile:*:*:*:*:*:android:*:*
|
— |
3.3.17
|
|
Streetwriters Notesnook_Mobile
cpe:2.3:a:streetwriters:notesnook_mobile:*:*:*:*:*:iphone_os:*:*
|
— |
3.3.17
|