×

Chromium-Based Browsers in Windows Domains Vulnerable to Arbitrary Extension Loads

A new study has uncovered a method for silently installing custom extensions on Chromium-based browsers running in Windows domain environments.

By exploiting how Chrome and its relatives store extension settings and security checks in preference files, attackers can inject arbitrary code into user browsers without triggering visible warnings.

The research, validated on Chromium version 130 through the latest release, demonstrates how a simple disk write can bypass standard safeguards and achieve persistent, stealthy access.

Understanding the Extension Mechanism

Chromium extensions are packaged as .crx files that include a manifest, background scripts, content scripts, and optional HTML pages for popups or options.

When installed, these extensions register entries in JSON preference files under the user’s AppData directory.

Domain-joined machines update the standard Preferences file, while non-joined systems use Secure Preferences.

Both files track installed extensions and enforce integrity through message authentication codes (MACs).

Each extension entry is keyed by a unique ID, derived from the extension’s public key or installation path, and protected by an HMAC using a seed extracted from the browser’s resources.

The attack hinges on three steps: pre-calculating the extension ID, generating correct MACs, and modifying the preference files.

Researchers first reproduce the target extension’s ID by embedding its public key in the manifest.

They then extract the HMAC seed from the resources.pak file, compute valid MACs for both the extension entry and the developer-mode toggle, and overwrite the JSON settings.

This approach bypasses Chrome’s developer-mode restrictions and allows the malicious extension to load at startup, effectively backdooring the browser without using the command-line –load-extension flag or the Chrome Web Store.

The team also discovered domain policy bypass methods. By spoofing the ID of an approved extension, attackers can bypass group policy allowlists.

Chrome will show warnings or may block the installation depending on policy settings
Chrome will show warnings or may block the installation depending on policy settings

If an unpacked extension shares an ID with a store-installed one, Chromium prioritizes the local version, enabling “extension stomping.”

Extension stomping

Finally, administrators’ own policies stored under registry keys in HKCU can be deleted or altered by any process with elevated rights, neutralizing policy enforcement altogether.

For red teams, this technique offers a reliable way to gain browser persistence and execute JavaScript natively within Chromium’s process, sidestepping protections like app-bound encryption.

Integration with existing implants or use of SMB-based deployment tactics can extend control across multiple hosts.

Blue teams must monitor preference file changes, watch for unexpected developer-mode state modifications, and audit registry keys under HKCU\Software\Policies\Google\Chrome.

Detecting unsigned writes to these sensitive configuration files is crucial to preventing undetected extension implants.

This research highlights a fundamental weakness in Chromiums’ reliance on a static HMAC seed and user-writable preference files.

Strengthening defenses may require moving critical integrity checks into protected system components or enhancing OS-level encryption mechanisms.

As browsers grow into full-fledged application platforms, ensuring their internal secrets remain secure is more important than ever.

Follow us on Google News, LinkedIn, and X to Get Instant Updates and Set GBH as a Preferred Source in Google.

Post Comment