Electron — это платформа для написания кроссплатформенных настольных приложений с использованием JavaScript, HTML и CSS. До версий 39.8.8, 40.9.0, 41.2.1 и 42.0.0-beta.3 запросы на открытие URL-адресов внешнего протокола из веб-контента не учитывали ограничения изолированной программной среды iframe, поэтому изолированный iframe мог вызвать запуск внешнего приложения, зарегистрированного в ОС. Состояние изолированной программной среды фрейма также не было доступно обработчикам разрешений приложений, что влияло на приложения, которые отображают ненадежный контент в изолированных iframe и предоставляют разрешение openExternal по умолчанию, если setPermissionRequestHandler не установлен.
Эта проблема исправлена в версиях 39.8.8, 40.9.0, 41.2.1 и 42.0.0-beta.3.
Показать оригинальное описание (EN)
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.8, 40.9.0, 41.2.1, and 42.0.0-beta.3, requests to open external protocol URLs from web content did not take iframe sandbox restrictions into account, so a sandboxed iframe could cause an OS-registered external application to be launched. The frame sandbox state was also not made available to the app permission handlers, affecting apps that render untrusted content in sandboxed iframes and grant the openExternal permission by default when no setPermissionRequestHandler is installed. This issue is fixed in 39.8.8, 40.9.0, 41.2.1, and 42.0.0-beta.3.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 11
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*
|
— |
39.8.8
|
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*
|
40.0.0
|
40.9.0
|
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*
|
41.0.0
|
<= 41.2.1
|
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha1:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha2:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha3:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha4:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha5:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:alpha6:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:beta1:*:*:*:node.js:*:*
|
— | — |
|
Electronjs Electron
cpe:2.3:a:electronjs:electron:42.0.0:beta2:*:*:*:node.js:*:*
|
— | — |