JSON Formatter Chrome Plugin Adware: What It Means for Your Browser
json formatterchrome extensionadwarecallum lockegivefreely.combrowser securitycybersecurityprivacydata trackingweb securityonline security

JSON Formatter Chrome Plugin Adware: What It Means for Your Browser

When a Trusted Tool Turns Rogue: The JSON Formatter Chrome Plugin Adware Incident and What It Means for Your Browser

Around March 2026, the JSON Formatter Chrome plugin (ID: bcjindcccaagfpapjjmafapmmgkkhgoa), developed by Callum Locke, made a significant shift. It transitioned from being an open-source project to a closed-source one. This change wasn't just about code visibility; it came with a suite of new, unwelcome behaviors. Without warning to its existing user base, the JSON Formatter Chrome plugin started injecting adware into checkout pages, performing geolocation tracking, and communicating with external domains like https://api.givefreely.com and https://events.givefreely.com for user behavior tracking.

The Betrayal of a Utility

The author stated the reason for this pivot was "to build a more thorough API-browsing tool with premium features." But the practical outcome for users of this JSON Formatter Chrome plugin was a utility that suddenly felt like a liability. This isn't a new problem; we saw a similar incident around 2017 when the JSONView extension on Firefox was compromised, leading Mozilla to force its uninstall due to leaked browser visit URLs. History, it seems, repeats itself when the underlying security model remains unchanged, especially for developer tools like the JSON Formatter Chrome plugin.

How a Simple Tool Became a Sideloaded Ad Campaign

The mechanism here is straightforward, if insidious. The JSON Formatter Chrome plugin already had broad permissions: "Read and change all your data on all websites." This permission is the key that lets it do what it wants on any page you visit, enabling the adware functionality of the JSON Formatter Chrome plugin.

Here's the chain of events:

  1. DOM Injection: The extension injects a suspicious element, give-freely-root-bcjindcccaagfpapjjmafapmmgkkhgoa, directly into the browser's Document Object Model (DOM). This is its foothold, allowing the JSON Formatter Chrome plugin to manipulate pages.
  2. Content Script Deployment: Using Chrome’s content script API, it embeds GiveFreely scripts into the DOM of checkout pages. This is where the real work starts.
  3. Transaction Hijacking: The embedded scripts dynamically modify page content and, more critically, hijack event listeners. Think click and submit events. This lets the extension overlay donation popups during critical transactions, like when you're trying to finalize a purchase. It's designed to interrupt and solicit at the most sensitive moment.
  4. Geolocation: The extension queries MaxMind’s GeoIP2 API to figure out your country. It uses a hardcoded API key for this, which is a vulnerability in itself – someone could decompile the extension and extract that key. While the current analysis shows this geolocation data is stored locally and not transmitted externally, that's a thin line. Local storage today could be external transmission tomorrow with another update.
  5. Behavioral Tracking: The communication with api.givefreely.com and events.givefreely.com is for tracking user behavior on specific websites. This data, combined with geolocation, is used for behavioral profiling to tailor those donation prompts.
  6. Ad Fraud Potential: The code even contains cryptic variables like GF_SHOULD_STAND_DOWN. This suggests potential ad fraud mechanisms, such as click injection (simulating clicks without your consent) or impression fraud (artificially boosting ad impressions by forcing popups). GF_SHOULD_STAND_DOWN could easily act as a kill switch, letting the adware lay low to evade detection during reviews or specific user sessions.
JSON Formatter Chrome plugin injecting adware on a checkout page
Source: JSON-Formatter Extension Turns Closed-Source, Introduces Intrusive Donation Tactics and Tracking Without Consent / Fair Use

The Real Impact: Beyond Annoying Pop-ups

The immediate annoyance of pop-ups during checkout is just the surface. The deeper concerns are about privacy, security, and the erosion of trust in the tools we rely on daily, particularly with incidents like the JSON Formatter Chrome plugin turning rogue.

  • Privacy Breach: Even if geolocation data is currently local, the fact that it's being collected and used for behavioral profiling is a privacy violation. The communication with givefreely.com for tracking user behavior on specific sites is a clear data collection activity that users did not consent to.
  • Security Risk: An extension with "Read and change all your data on all websites" permissions, that actively modifies DOM and hijacks event listeners, has the capability to do far worse than just show donation prompts. It could inject malicious scripts, steal credentials, or exfiltrate sensitive data. The hardcoded MaxMind API key is a vulnerability that could be exploited by others.
  • Erosion of Trust: This incident, like the JSONView one before it, chips away at user confidence in the entire browser extension ecosystem. When a widely used, previously trusted tool like the JSON Formatter Chrome plugin turns malicious, it makes users wary of any extension, even the genuinely helpful and secure ones.
  • Monetization Deception: The donation prompts, especially when forced onto checkout pages, are deceptive. They use a user's focus during a transaction for an unrelated solicitation, blurring the lines between legitimate support and intrusive advertising.

The social sentiment I'm seeing online reflects this. Developers and users are expressing strong frustration and distrust towards the JSON Formatter Chrome plugin. Many have uninstalled the extension immediately. There's a growing call for browser vendors to integrate native JSON formatting, or for users to stick to minimal, open-source alternatives, or even self-developed solutions, precisely because of this recurring issue of trusted extensions going rogue.

What We Do Now, and What Needs to Change

First, if you have the JSON Formatter Chrome plugin (ID: bcjindcccaagfpapjjmafapmmgkkhgoa) installed, uninstall it. Immediately. There's a "Classic" version available, described as simple, open source, and local-only, but it's not receiving updates. That's a trade-off: security through open-source transparency, but potential vulnerability due to lack of maintenance.

Beyond that, we need to rethink how we approach browser extensions:

  • Scrutinize Permissions: Before installing any extension, look closely at the permissions it requests. "Read and change all your data on all websites" is a red flag for simple utilities. Ask yourself if the functionality truly needs that level of access.
  • Prioritize Open Source (with caveats): Open-source projects offer transparency, but that transparency only helps if someone is actually auditing the code. Don't assume open source automatically means secure. Check for active communities, recent commits, and independent security reviews.
  • Demand Native Features: Browser vendors like Google, Mozilla, and Microsoft should integrate common developer utilities, like JSON formatting, directly into their browsers. This removes the need for third-party extensions and the associated trust issues.
  • Better Browser Security Models: We need better sandboxing and isolation for extensions. The current model, where an extension with broad permissions can essentially take over your browsing experience, is too permissive. There should be clearer, more granular controls and warnings for permission changes or monetization shifts.
  • Acknowledge the Monetization Problem: The "why" behind these incidents often boils down to the struggle of maintaining open-source projects. Developers put in countless hours, and when direct monetization is difficult, some turn to less ethical methods. This doesn't excuse the behavior, but it highlights a systemic issue that needs addressing within the open-source ecosystem.

The JSON Formatter Chrome plugin incident is a stark reminder that convenience often comes with a hidden cost. Browser extensions are a powerful tool, but their power is a double-edged sword. We can't just keep hoping for the best. The current trust model for browser extensions is broken, and the JSON Formatter Chrome plugin serves as a prime example of why users and browser vendors need to demand a more secure, transparent, and accountable ecosystem.

Daniel Marsh
Daniel Marsh
Former SOC analyst turned security writer. Methodical and evidence-driven, breaks down breaches and vulnerabilities with clarity, not drama.