跳到主要內容

Protocol Handler 漏洞修復

·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