(CVE-2018-15685)Electron_WebPreferences_远程命令执行漏洞

# (CVE-2018-15685)Electron WebPreferences 远程命令执行漏洞

==================

一、漏洞简介
————

Electron在设置了`nodeIntegration=false`的情况下(默认),页面中的JavaScript无法访问node.js的内置库。CVE-2018-15685绕过了该限制,导致在用户可执行JavaScript的情况下(如访问第三方页面或APP存在XSS漏洞时),能够执行任意命令。

二、漏洞影响
————

GitHub Electron 1.7.15版本,1.8.7版本,2.0.7版本,3.0.0-beta.6版本。

三、复现过程
————

### 编译APP

执行如下命令编译一个包含漏洞的应用:

docker-compose run -e PLATFORM=win64 –rm electron

其中PLATFORM的值是运行该应用的操作系统,可选项有:`win64`、`win32`、`mac`、`linux`。

编译完成后,再执行如下命令,启动web服务:

docker-compose run –rm -p 8080:80 web

此时,访问`http://www.0-sec.org:8080/cve-2018-15685.tar.gz`即可下载编译好的应用。

### 漏洞复现

在本地打开应用:

![](/static/qingy/(CVE-2018-15685)Electron_WebPreferences_远程命令执行漏洞/img/rId26.png)

点击提交,输入框中的内容将会显示在应用中,显然这里存在一处XSS漏洞。

我们提交\`\`,发现没有任何反馈,原因就是`nodeIntegration=false`。

此时,提交POC(Windows):

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容