Application Security

Browser Extension Attacks and the Supply Chain

Browser extensions run with elevated privileges and update automatically. When attackers compromise or acquire popular extensions, they gain access to millions of users instantly.

Bob
Threat Researcher
6 min read

Browser extensions are one of the most underestimated attack surfaces in the software supply chain. They run with broad permissions, update silently in the background, and have access to everything a user does in the browser -- including credentials, session tokens, and sensitive data. When an extension is compromised, the attacker inherits all of those capabilities.

The Extension Threat Model

A typical browser extension can:

  • Read and modify content on every website the user visits.
  • Access browsing history, bookmarks, and cookies.
  • Intercept and modify network requests.
  • Execute arbitrary JavaScript in the context of any web page.
  • Store and exfiltrate data to remote servers.

Extensions update automatically without user intervention. If an attacker pushes a malicious update to a previously legitimate extension, every user receives the malicious code silently.

Attack Vectors

Developer Account Takeover

Extension developers are often individuals or small teams with limited security resources. Attackers target their accounts through:

  • Phishing emails impersonating the Chrome Web Store or Mozilla Add-ons team.
  • Credential stuffing using passwords leaked from other breaches.
  • Social engineering to gain access to developer accounts.

Once the attacker controls the developer account, they can push updates to the extension that include malicious code.

Extension Acquisition

A more subtle approach: attackers buy popular extensions from their developers. Many extension developers are hobbyists who built something useful but don't want to maintain it long-term. An offer of a few thousand dollars can be tempting.

The new owner then pushes an update that adds malicious functionality. Users who trusted the original developer have no idea ownership changed.

In 2020, researchers documented at least 80 million Chrome users affected by extensions that had been acquired and turned malicious.

Compromised Development Infrastructure

Extensions are software, and their development infrastructure can be compromised just like any other project. If an attacker gains access to the extension's build system, CI/CD pipeline, or source code repository, they can inject malicious code that appears in the next legitimate release.

Dependency Compromise

Extensions use npm packages and other dependencies. A compromised dependency can inject malicious code into an extension. The extension developer might never notice if the malicious functionality is hidden in a deeply nested dependency.

Malicious Extensions Disguised as Legitimate

Attackers create extensions that mimic popular tools, using similar names and icons. Users install the fake extension thinking it's the legitimate one. Typosquatting and SEO manipulation drive installations.

Notable Incidents

MEGA.nz Extension Compromise (2018)

The official MEGA.nz Chrome extension was compromised when an attacker gained access to the developer's Chrome Web Store account. The malicious version harvested login credentials for sites including Amazon, Google, Microsoft, and GitHub. It also stole cryptocurrency wallet private keys.

The Great Suspender (2021)

A popular Chrome extension with over 2 million users was acquired by an unknown entity that added malicious code to track user behavior and inject ads. Google eventually removed it from the Chrome Web Store, but the timeline between acquisition and removal left millions of users exposed.

DataSpii (2019)

Researchers discovered that several popular browser extensions were collecting detailed browsing data from millions of users and selling it. The collected data included internal corporate URLs, tax returns, medical records, and other sensitive information. Some of the data was being sold to a marketing analytics firm.

Chrome Extension Mass Phishing (2022-2023)

A coordinated phishing campaign targeted Chrome extension developers, compromising dozens of extensions with millions of total users. The attackers used OAuth phishing to gain access to developer accounts, then pushed updates that injected credential-stealing code.

Enterprise Implications

For organizations, browser extension supply chain risks are significant:

Developer tools are targets: Extensions for developer tools (Git clients, API testing tools, productivity tools) run with access to source code, API keys, and development infrastructure. Compromising a developer-focused extension can be a stepping stone to compromising the software supply chain itself.

Corporate credential theft: Extensions with access to corporate SSO portals can harvest credentials that provide access to critical infrastructure.

Data exfiltration: Extensions can silently read and exfiltrate data from internal web applications, including CI/CD dashboards, cloud consoles, and source code management tools.

Persistence: Unlike malware that might be detected by endpoint security, malicious extensions persist through browser updates and system reboots.

Defenses

Extension Management Policies

Organizations should implement browser extension policies:

  • Allowlisting: Only permit approved extensions. This is the most effective but most restrictive approach.
  • Blocklisting: Block known-malicious extensions. Less effective since it's reactive.
  • Permission-based policies: Block extensions that request overly broad permissions (e.g., access to all sites).

Chrome Enterprise, Edge for Business, and Firefox Enterprise all support extension management policies.

Extension Auditing

For extensions that are approved for use:

  • Review the source code if available.
  • Monitor for ownership changes.
  • Track permission changes in updates.
  • Test in a sandboxed environment before deployment.

Manifest V3

Chrome's Manifest V3 (MV3) extension platform reduces some risks:

  • Extensions can no longer execute remotely hosted code.
  • Network request modification capabilities are more limited.
  • Content scripts have reduced capabilities.

However, MV3 has been controversial, and some security researchers argue it doesn't go far enough.

Browser Isolation

For high-security environments, browser isolation products render web content in a remote environment, limiting what extensions can access. This adds latency but significantly reduces the risk from malicious extensions.

Monitor Extension Behavior

Network monitoring can detect extensions that exfiltrate data. Look for:

  • Unusual outbound connections from browser processes.
  • Data being sent to unfamiliar domains.
  • Extension-initiated connections to known malicious infrastructure.

User Education

Users should understand:

  • Only install extensions from trusted sources.
  • Review permissions before installing.
  • Be suspicious of extensions that request broad access.
  • Report extensions that behave unexpectedly.
  • Regularly review installed extensions and remove unused ones.

Separate Browsing Profiles

Use separate browser profiles for development and general browsing. Limit extensions in the development profile to only those strictly necessary.

The Structural Problem

Browser extensions represent a structural supply chain risk because they combine three dangerous properties:

  1. Broad access: Extensions can read and modify almost anything in the browser.
  2. Silent updates: Malicious updates deploy without user awareness.
  3. Weak vetting: Extension stores have limited ability to detect sophisticated malicious behavior.

Until extension platforms fundamentally address these issues, browser extensions will remain a significant supply chain attack vector.

How Safeguard.sh Helps

While Safeguard.sh focuses on software supply chain security rather than browser extension management directly, its principles apply to the broader challenge. Safeguard.sh helps organizations maintain visibility into their software dependencies, including JavaScript libraries and packages that might also be distributed as browser extensions. By tracking your full dependency graph through SBOMs and monitoring for known vulnerabilities, Safeguard.sh ensures that compromised packages -- whether consumed via npm, CDN, or browser extension -- are flagged before they reach production. The platform's policy gates enforce security standards across your entire supply chain, reducing the risk that compromised components propagate through any delivery mechanism.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.