跳至主要內容

協定處理器漏洞修復

·2 分鐘閱讀

已發現一個遠端程式碼執行漏洞,會影響使用自訂協定處理器的 Electron 應用程式。此漏洞已獲分配 CVE 識別碼 CVE-2018-1000006


受影響的平台

設計在 Windows 上執行的 Electron 應用程式,若將自己註冊為某個協定的預設處理器 (例如 myapp://),則會受到此漏洞的影響。

無論以何種方式註冊協定,此類應用程式都可能受到影響,例如使用原生程式碼、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