GHSA-p2jh-44qj-pf2v
Exfiltration of hashed SMB credentials on Windows via file:// redirect
Details
### Impact When following a redirect, Electron delays a check for redirecting to file:// URLs from other schemes. The contents of the file is not available to the renderer following the redirect, but if the redirect target is a SMB URL such as `file://some.website.com/`, then in some cases, Windows will connect to that server and attempt NTLM authentication, which can include sending hashed credentials.
### Patches This issue has been fixed in all current stable versions of Electron. Specifically, these versions contain the fixes:
- 21.0.0-beta.1 - 20.0.1 - 19.0.11 - 18.3.7
We recommend all apps upgrade to the latest stable version of Electron.
### Workarounds If upgrading isn't possible, this issue can be addressed without upgrading by preventing redirects to file:// URLs in the `WebContents.on('will-redirect')` event, for all WebContents:
```js app.on('web-contents-created', (e, webContents) => { webContents.on('will-redirect', (e, url) => { if (/^file:/.test(url)) e.preventDefault() }) }) ```
### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org).
### Credit Thanks to user @coolcoolnoworries for reporting this issue.
Are you affected?
Enter the version of the package you're using.