跳至主要内容

BrowserView window.open() 漏洞修复

·阅读时间:1 分钟

已发现一个代码漏洞,允许在子窗口中重新启用 Node。


使用 sandbox: truenativeWindowOpen: truenodeIntegration: false 打开 BrowserView 会导致 webContents 可以在其中调用 window.open,并且新打开的子窗口将启用 nodeIntegration。 此漏洞影响 Electron 的所有支持版本。

缓解措施

我们发布了 Electron 的新版本,其中包含此漏洞的修复程序:2.0.173.0.153.1.34.0.45.0.0-beta.2。 我们建议所有 Electron 开发人员立即将其应用程序更新到最新稳定版本。

如果由于某种原因您无法升级 Electron 版本,则可以通过禁用所有子 web 内容来缓解此问题。

view.webContents.on('-add-new-contents', (e) => e.preventDefault());

更多信息

此漏洞由 PalmerAL 发现并负责任地报告给 Electron 项目。

要详细了解有关如何保持 Electron 应用程序安全的最佳实践,请参阅我们的 安全教程

如果您想报告 Electron 中的漏洞,请发送电子邮件至 [email protected]