Google Web Designer Vulnerability Lets Hackers Take Over Client Systems
A critical client-side remote code execution (RCE) vulnerability in Google Web Designer exposed Windows users to full system compromise. This vulnerability affected versions of the software prior to 16.4.0.0711, released on Tue, Jul 29, 2025.
A critical client-side remote code execution (RCE) vulnerability in Google Web Designer exposed Windows users to full system compromise. This vulnerability affected versions of the software prior to 16.4.0.0711, released on Tue, Jul 29, 2025.
The flaw allowed attackers to inject malicious CSS into a configuration file and use an internal API to execute arbitrary commands via Google Chrome’s command-line arguments. The vulnerability originated from improper sanitization of custom gradient definitions in the gwd_workspace.json configuration file included with ad documents.
Solid colors are strictly parsed into their RGBA components, while gradient entries are only checked for gradient-related keywords before being directly injected into the app’s UI. By crafting a malicious CSS rule—specifically a background:url() function pointing to Google Web Designer’s internal REST API—an attacker could trigger unintended API calls.
Once the CSS injection calls the /api/browser endpoint, which Google Web Designer uses to launch external browser processes, an attacker can break out of the URL parameter with a double quote to pass additional Chrome arguments. By abusing Chrome’s --browser-subprocess-path option, it becomes possible to point the browser to a remote executable hosted on a WebDAV share using a Universal Naming Convention (UNC) path.
A critical client-side remote code execution (RCE) vulnerability in Google Web Designer exposed Windows users to full system compromise.
Malicious Package Distribution: Victims download a crafted ad document package and open it in Google Web Designer. CSS Injection: The gwd_workspace.json file defines a custom gradient swatch whose CSS payload references the /api/browser endpoint with injected Chrome arguments. API Invocation: When the user clicks the Swatches control, the app’s UI renders the malicious CSS, issuing an HTTP request to the internal API. Remote Code Execution: Google Web Designer spawns Chrome with the injected arguments, causing it to fetch and execute the attacker’s payload from the UNC share.
The vulnerability was disclosed by security researcher Balint Magyar and was awarded a $3,500 bounty by Google’s Vulnerability Reward Program. Users are urged to update to version 16.4.0.0711 or later to mitigate the risk. While macOS and Linux versions are not affected due to stricter subprocess handling, Windows users faced the brunt of this exploit.
This issue highlights the challenges of securing hybrid applications that blend native APIs and web technologies. Security professionals and developers should ensure thorough sanitization and careful handling of user-provided data, especially when bridging web UIs with system-level APIs.
Based on reporting by GBHackers.
