3 ms·
In electron the UI javascript is running in a separate process than the node javascript. They can communicate through Electron's IPC channel. I wouldn't be too
by therealdrag0 7y ago
In electron the UI javascript is running in a separate process than the node javascript. They can communicate through Electron's IPC channel.
I wouldn't be too surprised if it could be exploited, but it's not as easy as require('fs'). Instead you have to send messages through the pipe and you'd have to know how to exploit the handlers at the other end in the NodeJs process.
https://www.electronjs.org/docs/api/ipc-main https://www.electronjs.org/docs/api/ipc-main
- Uehreka 7y agoI was on a phone before and didn't have the docs pulled up, but the thing I was referring to is called nodeIntegration (it's a boolean you set in the webPreferences object in the options object you pass to the BrowserWindow constructor). This section of the docs explains it a bit better: https://www.electronjs.org/docs/tutorial/application-architecture#using-nodejs-apis https://www.electronjs.org/docs/tutorial/application-archite... > Electron exposes full access to Node.js both in the main and the renderer process.
- therealdrag0 7y agoTIL, thanks.
- sieabahlpark 7y ago> As you might already be able to guess, this has important security implications if you ever attempt to load remote content. You can find more information and guidance on loading remote content in our security documentation. Don't enable the feature if you don't want it to be an avenue for exploits?