利用Vulnhub复现漏洞 - Electron WebPreferences 远程命令执行漏洞(CVE-2018-15685)

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

    • Vulnhub官方复现教程
      • 漏洞原理
    • 复现漏洞
      • 启动环境
    • 漏洞复现

Vulnhub官方复现教程

https://github.com/vulhub/vulhub/blob/master/electron/CVE-2018-15685/README.zh-cn.md

漏洞原理

Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将Chromium和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。

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

参考链接:

  • https://electronjs.org/blog/web-preferences-fix
  • https://www.contrastsecurity.com/security-influencers/cve-2018-15685

复现漏洞

启动环境

https://blog.csdn.net/JiangBuLiu/article/details/93853056
进入路径为

cd /root/vulhub/electron/CVE-2018-15685

搭建及运行漏洞环境:

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

其中PLATFORM的值是运行该应用的操作系统,可选项有:win64win32maclinux
编译完成后,再执行如下命令,启动web服务:

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

用时:
访问http://your-ip:8080/cve-2018-15685.tar.gz即可下载编译好的应用。

漏洞复现

你可能感兴趣的:(渗透)