Skip to content

Junyu Zhou - Web2Own: Attacking Desktop Apps from Web Security's Perspective

Junyu Zhou

Demonstrates how web security vulnerabilities (XSS, SSRF, path traversal) in Electron desktop applications escalate to full OS code execution.

Summary

Attacking Electron Desktop Applications

Junyu Zhou presents a systematic methodology for attacking Electron-based desktop applications using web security techniques, demonstrating that web vulnerabilities in desktop contexts result in full OS-level code execution.

Electron Architecture

Electron applications bundle Chromium and Node.js, creating a hybrid web/desktop environment. The main process has full Node.js capabilities (file system, shell, network); renderer processes run web content in a sandbox. The critical boundary is the IPC bridge between renderer and main.

XSS to RCE

In Electron apps that disable contextIsolation or enable nodeIntegration in renderer processes, stored XSS in rendered content executes arbitrary JavaScript with full Node.js capabilities — providing immediate file system access, shell command execution, and credential extraction from the local system.

Real-World Targets

Zhou demonstrates successful exploitation of XSS vulnerabilities in Slack (before fixes), VS Code extensions, and several popular productivity applications, achieving code execution through seemingly low-severity web vulnerabilities.

Related talks