协议处理器漏洞修复
·阅读时间 2 分钟
一个远程代码执行漏洞已被发现,影响使用自定义协议处理程序的 Electron 应用。此漏洞已被分配 CVE 标识符 CVE-2018-1000006。
受影响的平台
在 Windows 上运行并注册为协议(例如 myapp://)的默认处理程序的 Electron 应用程序存在漏洞。
无论协议如何注册,例如使用原生代码、Windows 注册表或 Electron 的 app.setAsDefaultProtocolClient API,此类应用都可能受到影响。
macOS 和 Linux **不受**此问题影响。
缓解措施
我们发布了包含此漏洞修复的新版本的 Electron:1.8.2-beta.5、1.7.12 和 2.6.17。我们敦促所有 Electron 开发者立即将他们的应用更新到最新稳定版本。
如果您由于某种原因无法升级您的 Electron 版本,可以在调用 app.setAsDefaultProtocolClient 时,将 -- 作为最后一个参数附加,这将阻止 Chromium 解析进一步的选项。双破折号 -- 表示命令选项的结束,之后仅接受位置参数。
app.setAsDefaultProtocolClient(protocol, process.execPath, [
'--your-switches-here',
'--',
]);
有关更多详细信息,请参阅 app.setAsDefaultProtocolClient API。
要了解有关保护您的 Electron 应用程序的最佳实践,请参阅我们的 安全教程。
如果您希望报告 Electron 中的漏洞,请提交 GitHub 安全咨询。
