跳转到主要内容

协议处理器漏洞修复

·阅读时间 2 分钟

已发现一起远程代码执行漏洞,影响使用自定义协议处理程序的 Electron 应用程序。此漏洞已被分配 CVE 标识符 CVE-2018-1000006


受影响的平台

在 Windows 上运行并注册为协议(例如 myapp://)的默认处理程序的 Electron 应用程序存在漏洞。

此类应用程序可能受到影响,无论协议如何注册,例如使用原生代码、Windows 注册表或 Electron 的 app.setAsDefaultProtocolClient API。

macOS 和 Linux **不受**此问题影响。

缓解措施

我们已发布包含此漏洞修复的新版本 Electron:1.8.2-beta.51.7.121.6.17。我们敦促所有 Electron 开发者立即将其应用程序更新到最新的稳定版本。

如果由于某种原因您无法升级您的 Electron 版本,您可以在调用 app.setAsDefaultProtocolClient 时在最后一个参数后面添加 --,这样可以防止 Chromium 解析进一步的选项。双连字符 -- 表示命令选项的结束,之后只接受位置参数。

app.setAsDefaultProtocolClient(protocol, process.execPath, [
'--your-switches-here',
'--',
]);

有关更多详细信息,请参阅 app.setAsDefaultProtocolClient API。

要了解有关保护您的 Electron 应用安全的最佳实践,请参阅我们的安全教程

如果您希望报告 Electron 的漏洞,请发送电子邮件至 security@electronjs.org